Summary: | Unexpected crash on rescan - Latest 5.5. AppImage | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | Andrius <aegoreev> |
Component: | Metadata-Engine | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | caulier.gilles |
Priority: | NOR | ||
Version: | 5.5.0 | ||
Target Milestone: | --- | ||
Platform: | Appimage | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 7.3.0 | |
Sentry Crash Report: |
Description
Andrius
2017-02-26 14:20:02 UTC
It crash in Exiv2 shared library when a file is open for reading in /media/data/Family Pictures/2016/2016-12/20161203/ Can you identify which file is relevant of this crash ? Do you use non latin1 characters in file name ? Gilles Caulier (In reply to caulier.gilles from comment #1) > It crash in Exiv2 shared library when a file is open for reading in > /media/data/Family Pictures/2016/2016-12/20161203/ > > Can you identify which file is relevant of this crash ? > > Do you use non latin1 characters in file name ? > > Gilles Caulier Here is what I did: ffmpeg -i '/media/data/Family Pictures/2016/2016-12/20161203/20161203_142535.mp4' -c:v libx264 -crf 23 -c:a aac -strict experimental -q:a 100 -map_metadata 0 '/media/data/Family Pictures/2016/2016-12/20161203/20161203_142535_x264.mp4' You can see both the source file and the output file in the command. There is no non-latin symbols in the file names. digiKam detected new file 20161203_142535_x264.mp4 in the directory and crashed. FFmpeg encoding was still in progress. This is a special use case, with Exiv2. First Exiv2 is very sensible with video files. Video parser needs again optimisations. Second, the way to parse a file under construction is not an expected situation that Exiv2 have tested. The Exiv2 code need certainly some wrap around this situation to prevent a crash. At least, a C++ exception must be generated, not a crash. C++ exception will be catch by digiKam. Please report this use case to Exiv2 bugzilla. Best Gilles Caulier (In reply to caulier.gilles from comment #3) > This is a special use case, with Exiv2. > > First Exiv2 is very sensible with video files. Video parser needs again > optimisations. > > Second, the way to parse a file under construction is not an expected > situation that Exiv2 have tested. > > The Exiv2 code need certainly some wrap around this situation to prevent a > crash. At least, a C++ exception must be generated, not a crash. C++ > exception will be catch by digiKam. > > Please report this use case to Exiv2 bugzilla. > > Best > > Gilles Caulier What exiv2 command or API call does digiKam use when a new file detected in the collection? A lots of API calls through Digikam::DMetadata class : https://cgit.kde.org/digikam.git/tree/libs/dmetadata Gilles Caulier Not reproducible with digiKam 7.3.0 and Exiv2 0.27.4 |