when I start digikam it infrequently crashes. it starts checking for updates but when it reaches 41% it crashes with the following output: <code> Object::connect: No such signal org::freedesktop::UPower::DeviceAdded(QString) Object::connect: No such signal org::freedesktop::UPower::DeviceRemoved(QString) KCrash: Application 'digikam' crashing... KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit KCrash: Connect sock_file=/home/willem/.kde4/socket-basedrum/kdeinit4__0 QSocketNotifier: Invalid socket 16 and type 'Read', disabling... QSocketNotifier: Invalid socket 20 and type 'Exception', disabling... QSocketNotifier: Invalid socket 25 and type 'Read', disabling... QSocketNotifier: Invalid socket 70 and type 'Read', disabling... QSocketNotifier: Invalid socket 92 and type 'Read', disabling... QSocketNotifier: Invalid socket 69 and type 'Read', disabling... QSocketNotifier: Invalid socket 67 and type 'Read', disabling... digikam: Fatal IO error: client killed (digikam:5311): GStreamer-CRITICAL **: gstsystemclock: write control failed in wakeup_async: 9:Bad file descriptor QSocketNotifier: Invalid socket 19 and type 'Read', disabling... </code> Reproducible: Always Steps to Reproduce: 1. start digikam 2. wait for the update to reach 41% 3. aploof
We need a GDB backtrace to hack. Look below for details : https://www.digikam.org/contrib
I've got the same error, here is my backtrace: #0 0x00007ffff12b3050 in __cxa_throw () from /usr/lib/libstdc++.so.6 #1 0x00007fffeebbee46 in Exiv2::ImageFactory::open(std::string const&) () from /usr/lib/libexiv2.so.13 #2 0x00007ffff62dd563 in KExiv2Iface::KExiv2::load(QString const&) const () from /usr/lib/libkexiv2.so.11 #3 0x00007ffff5bc6366 in Digikam::DMetadata::load(QString const&) const () from /usr/lib/libdigikamcore.so.4.5.0 #4 0x00007ffff55e78a7 in Digikam::ImageScanner::loadFromDisk() () from /usr/lib/libdigikamdatabase.so.4.5.0 #5 0x00007ffff55e7a90 in Digikam::ImageScanner::newFile(int) () from /usr/lib/libdigikamdatabase.so.4.5.0 #6 0x00007ffff5579006 in Digikam::CollectionScanner::scanNewFile(QFileInfo const&, int) () from /usr/lib/libdigikamdatabase.so.4.5.0 #7 0x00007ffff557c6e2 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib/libdigikamdatabase.so.4.5.0 #8 0x00007ffff557c59f in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib/libdigikamdatabase.so.4.5.0 #9 0x00007ffff557c59f in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib/libdigikamdatabase.so.4.5.0 #10 0x00007ffff557cf33 in Digikam::CollectionScanner::scanAlbumRoot(Digikam::CollectionLocation const&) () from /usr/lib/libdigikamdatabase.so.4.5.0 #11 0x00007ffff557e785 in Digikam::CollectionScanner::completeScan() () from /usr/lib/libdigikamdatabase.so.4.5.0 #12 0x00000000005e8180 in ?? () #13 0x00007ffff185c05f in ?? () from /usr/lib/libQtCore.so.4 #14 0x00007fffeefa8314 in start_thread () from /usr/lib/libpthread.so.0 #15 0x00007ffff0d835bd in clone () from /usr/lib/libc.so.6
Exiv2 problem with video files. See bug #340373 for details... Gilles Caulier *** This bug has been marked as a duplicate of bug 340373 ***
I tried downgrading exiv2 and libkexiv2, but that didn't help even after I matched one to the other. The workaround I used is to set MIME Type Filter to Image Files.
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