Summary: | digiKam crashes when checking an AVI video file using exiv2 - Use ExifTool instead. | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | Oded <oded.comay> |
Component: | Metadata-Video | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | caulier.gilles, oded.comay |
Priority: | NOR | Keywords: | drkonqi |
Version: | 4.5.0 | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 8.0.0 | |
Sentry Crash Report: |
Description
Oded
2014-12-19 14:14:52 UTC
The culprit is an .AVI file that was present in the new collection. Once removed, digikam starts up fine. exiv2 crashes in a similar way when run on that file: $ exiv2 /tmp/bad.AVI *** Error in `exiv2': free(): invalid next size (fast): 0x0000000000c21db0 *** ======= Backtrace: ========= /lib64/libc.so.6[0x395a87850e] /lib64/libc.so.6(cfree+0x5b5)[0x395a884165] /lib64/libexiv2.so.13(_ZN5Exiv29RiffVideo15infoTagsHandlerEv+0x269)[0x7f3b2a2684e9] /lib64/libexiv2.so.13(_ZN5Exiv29RiffVideo11decodeBlockEv+0x125)[0x7f3b2a26c345] /lib64/libexiv2.so.13(_ZN5Exiv29RiffVideo10tagDecoderERNS_7DataBufEm+0x58)[0x7f3b2a26bf78] /lib64/libexiv2.so.13(_ZN5Exiv29RiffVideo11decodeBlockEv+0x125)[0x7f3b2a26c345] /lib64/libexiv2.so.13(_ZN5Exiv29RiffVideo12readMetadataEv+0x348)[0x7f3b2a26c6e8] exiv2[0x41778b] exiv2[0x41a0dc] exiv2[0x4057de] /lib64/libc.so.6(__libc_start_main+0xf0)[0x395a81ffe0] exiv2[0x405aca] ======= Memory map: ======== 00400000-0042a000 r-xp 00000000 08:12 2101380 /usr/bin/exiv2 00629000-0062a000 r--p 00029000 08:12 2101380 /usr/bin/exiv2 0062a000-0062b000 rw-p 0002a000 08:12 2101380 /usr/bin/exiv2 00c1d000-00c3e000 rw-p 00000000 00:00 0 [heap] 395a000000-395a021000 r-xp 00000000 08:12 2097360 /usr/lib64/ld-2.20.so ... Apparently, this issue is fixed in a recent exiv2 release (see http://dev.exiv2.org/issues/1002). However, I would consider making digikam resilient to such 3rd party software issues (e.g. by forking a process). *** This bug has been marked as a duplicate of bug 340373 *** With 6.0.0, we have now a FFMpeg low level metadata parser based on libav C API for video files database registration. The Exiv2 video support is not used anymore as this code is buggous and nobody sound motivated in Exiv2 to finalize the code. The original post for this file must be fixed now and video metadata support with ffmpeg must be enough to populate database entries. Gilles Caulier Fixed with the new support of ExifTool to read metadata in place of Exiv2 with video files. |