Version: 0.10.0-beta6 (rev.: 879099) (using 4.1.2 (KDE 4.1.2), Kubuntu packages) Compiler: cc OS: Linux (i686) release 2.6.27-7-generic digikam4 and exiv2 crash with an AVI file. The avi file was from a canon camera and it can be played fine on the system with mplayer. Exiv2 version is latest svn exiv2 0.18-pre2 (from a few hours ago). This was in the terminal: digikam(15814) Digikam::isJpegImage: mimetype = "JPEG" digikam(15814) KExiv2Iface::KExiv2::getImageOrientation: Orientation => Exif.Image.Orientation => 1 digikam(15814) Digikam::isJpegImage: mimetype = "JPEG" digikam(15814) KExiv2Iface::KExiv2::getImageOrientation: Orientation => Exif.Image.Orientation => 1 terminate called after throwing an instance of 'Exiv2::Error' what(): /home/gsking/Pictures/DVDRAW023/2008-09-02/img-000015.AVI: The file contains data of an unknown image type KCrash: Application 'digikam' crashing... sock_file=/home/gsking/.kde4/socket-blaster/kdeinit4__0 digikam: Fatal IO error: client killed If I use only exiv2 on the file this is the error: exiv2 img-000015.AVI terminate called after throwing an instance of 'Exiv2::Error' what(): img-000015.AVI: The file contains data of an unknown image type Aborted This is the Krash log.: Application: digiKam (digikam), signal SIGABRT [Thread debugging using libthread_db enabled] [New Thread 0xb4abf6c0 (LWP 15814)] [New Thread 0xb1dfeb90 (LWP 15818)] [New Thread 0xb31ccb90 (LWP 15815)] [KCrash handler] #6 0xb8015430 in __kernel_vsyscall () #7 0xb51ad880 in raise () from /lib/tls/i686/cmov/libc.so.6 #8 0xb51af248 in abort () from /lib/tls/i686/cmov/libc.so.6 #9 0xb53ab6f8 in __gnu_cxx::__verbose_terminate_handler () from /usr/lib/libstdc++.so.6 #10 0xb53a95d5 in ?? () from /usr/lib/libstdc++.so.6 #11 0xb53a9612 in std::terminate () from /usr/lib/libstdc++.so.6 #12 0xb53a974a in __cxa_throw () from /usr/lib/libstdc++.so.6 #13 0xb4ba3a8d in Exiv2::ImageFactory::open () from /usr/local/lib/libexiv2.so.5 #14 0xb5567989 in KExiv2Iface::KExiv2::load (this=0xb1dfde30, filePath=@0xb15b674) at /home/gsking/programs/src/svn/digikam4/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2.cpp:238 #15 0xb7c65eac in Digikam::DMetadata::load (this=0xb1dfde30, filePath=@0xb15b674) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/dmetadata/dmetadata.cpp:76 #16 0xb7c65ff1 in DMetadata (this=0xb1dfde30, filePath=@0xb15b674) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/dmetadata/dmetadata.cpp:64 #17 0xb7cedf71 in Digikam::ThumbnailCreator::loadImagePreview (this=0x9e08ef8, path=@0xb15b674) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/threadimageio/thumbnailcreator.cpp:290 #18 0xb7cee8f8 in Digikam::ThumbnailCreator::load (this=0x9e08ef8, path=@0xb15b674) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/threadimageio/thumbnailcreator.cpp:181 #19 0xb7cf4f14 in Digikam::ThumbnailLoadingTask::execute (this=0xb15b668) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/threadimageio/thumbnailtask.cpp:136 #20 0xb7cdcb8f in Digikam::LoadSaveThread::run (this=0x9e04748) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/threadimageio/loadsavethread.cpp:132 #21 0xb65716ae in ?? () from /usr/lib/libQtCore.so.4 #22 0xb566950f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0 #23 0xb52637ee in clone () from /lib/tls/i686/cmov/libc.so.6 Thread 1 (Thread 0xb4abf6c0 (LWP 15814)): #0 0xb8015430 in __kernel_vsyscall () #1 0xb566d075 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/i686/cmov/libpthread.so.0 #2 0xb65726f2 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4 #3 0xb6571853 in QThread::wait () from /usr/lib/libQtCore.so.4 #4 0xb7cdd310 in ~LoadSaveThread (this=0x9e04748) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/threadimageio/loadsavethread.cpp:80 #5 0xb7ce13ec in ~ManagedLoadSaveThread (this=0x9e04748) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/threadimageio/managedloadsavethread.cpp:70 #6 0xb7cf1ab0 in ~ThumbnailLoadThread (this=0x9e04748) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/threadimageio/thumbnailloadthread.cpp:107 #7 0xb7cf0577 in destroy () at /home/gsking/programs/src/svn/digikam4/graphics/digikam/libs/threadimageio/thumbnailloadthread.cpp:89 #8 0xb7cf3271 in ~KCleanUpGlobalStatic (this=0xb7e68d48) at /usr/include/kglobal.h:67 #9 0xb51b0d69 in exit () from /lib/tls/i686/cmov/libc.so.6 #10 0xb5ac3d6b in ?? () from /usr/lib/libQtGui.so.4 #11 0xb76400da in KApplication::xioErrhandler () from /usr/lib/libkdeui.so.5 #12 0xb7640116 in ?? () from /usr/lib/libkdeui.so.5 #13 0xb62a8062 in _XIOError () from /usr/lib/libX11.so.6 #14 0xb62b0135 in ?? () from /usr/lib/libX11.so.6 #15 0xb62b0985 in _XEventsQueued () from /usr/lib/libX11.so.6 #16 0xb629890f in XEventsQueued () from /usr/lib/libX11.so.6 #17 0xb5afe11a in ?? () from /usr/lib/libQtGui.so.4 #18 0xb4e6a602 in g_main_context_prepare () from /usr/lib/libglib-2.0.so.0 #19 0xb4e6aa8a in ?? () from /usr/lib/libglib-2.0.so.0 #20 0xb4e6af61 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #21 0xb668c497 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4 #22 0xb5afdee5 in ?? () from /usr/lib/libQtGui.so.4 #23 0xb666052a in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4 #24 0xb66606ea in QEventLoop::exec () from /usr/lib/libQtCore.so.4 #25 0xb6662da5 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4 #26 0xb5a63767 in QApplication::exec () from /usr/lib/libQtGui.so.4 #27 0x082a2372 in main (argc=1, argv=0xbfb14dd4) at /home/gsking/programs/src/svn/digikam4/graphics/digikam/digikam/main.cpp:178 #0 0xb8015430 in __kernel_vsyscall ()
Andreas, What do you think about ? Gilles
There is a 'catch' statement but it doesn't work, right? I just stumbled upon something very similar here. Geoff, Can you try with exiv2 0.18-pre2 aka current svn revision minus this change: http://dev.robotbattle.com/cgi-bin/viewvc.cgi/exiv2/trunk/src/error.hpp?r1=1645&r2=1646 I suspect that's where the problem was introduced (to make the Microsoft compiler happy) Andreas
Sure - I will try this evening.
Thanks. I've checked in a change which hopefully fixes this. Please re-try with exiv2 rev. 1662; no editing required. Andreas
That seems to fix it. Digikam does not crash and I get this message with only exiv2... exiv2 img-000015.AVI Exiv2 exception in print action for file img-000015.AVI: img-000015.AVI: The file contains data of an unknown image type Thanks, Geoff
Fixed with the new support of ExifTool to read metadata in place of Exiv2 with video files.