Bug 342604

Summary: digiKam crash
Product: [Applications] digikam Reporter: frafra <franz.kauflin>
Component: Metadata-VideoAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR Keywords: drkonqi
Version: 4.4.0   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 6.0.0
Sentry Crash Report:

Description frafra 2015-01-07 22:24:40 UTC
Application: digikam (4.4.0)
KDE Platform Version: 4.14.3
Qt Version: 4.8.6
Operating System: Linux 3.16.7-7-desktop x86_64
Distribution: "openSUSE 13.2 (Harlequin) (x86_64)"

-- Information about the crash:
nach dem Start - während dem Scannen der Datenbank - stürtzt digikam ab.

The crash can be reproduced every time.

-- Backtrace:
Application: digiKam (digikam), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fefb7856880 (LWP 25317))]

Thread 4 (Thread 0x7fef98252700 (LWP 25318)):
#0  0x00007fefb032876d in recvmsg () at /lib64/libc.so.6
#1  0x00007fefb78cdeb9 in udev_monitor_receive_device () at /usr/lib64/libudev.so.1
#2  0x00007fef98bd12eb in  () at /usr/lib64/libusb-1.0.so.0
#3  0x00007fefae2750a4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007fefb03277fd in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7fef91b65700 (LWP 25319)):
[KCrash Handler]
#5  0x00007fefb0277187 in raise () at /lib64/libc.so.6
#6  0x00007fefb0278538 in abort () at /lib64/libc.so.6
#7  0x00007fefb02b50c4 in  () at /lib64/libc.so.6
#8  0x00007fefb02ba92e in malloc_printerr () at /lib64/libc.so.6
#9  0x00007fefb02bb636 in _int_free () at /lib64/libc.so.6
#10 0x00007fefad207197 in Exiv2::RiffVideo::infoTagsHandler() () at /usr/lib64/libexiv2.so.13
#11 0x00007fefad20c025 in Exiv2::RiffVideo::decodeBlock() () at /usr/lib64/libexiv2.so.13
#12 0x00007fefad20bc78 in Exiv2::RiffVideo::tagDecoder(Exiv2::DataBuf&, unsigned long) () at /usr/lib64/libexiv2.so.13
#13 0x00007fefad20c025 in Exiv2::RiffVideo::decodeBlock() () at /usr/lib64/libexiv2.so.13
#14 0x00007fefad20c398 in Exiv2::RiffVideo::readMetadata() () at /usr/lib64/libexiv2.so.13
#15 0x00007fefb55700a5 in KExiv2Iface::KExiv2::load(QString const&) const () at /usr/lib64/libkexiv2.so.11
#16 0x00007fefb4e8c626 in Digikam::DMetadata::load(QString const&) const () at /usr/lib64/libdigikamcore.so.4.4.0
#17 0x00007fefb48e05ff in Digikam::ImageScanner::loadFromDisk() () at /usr/lib64/libdigikamdatabase.so.4.4.0
#18 0x00007fefb48e07f0 in Digikam::ImageScanner::newFile(int) () at /usr/lib64/libdigikamdatabase.so.4.4.0
#19 0x00007fefb4878936 in Digikam::CollectionScanner::scanNewFile(QFileInfo const&, int) () at /usr/lib64/libdigikamdatabase.so.4.4.0
#20 0x00007fefb487ba9f in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () at /usr/lib64/libdigikamdatabase.so.4.4.0
#21 0x00007fefb487b957 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () at /usr/lib64/libdigikamdatabase.so.4.4.0
#22 0x00007fefb487b957 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () at /usr/lib64/libdigikamdatabase.so.4.4.0
#23 0x00007fefb487b957 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () at /usr/lib64/libdigikamdatabase.so.4.4.0
#24 0x00007fefb487c363 in Digikam::CollectionScanner::scanAlbumRoot(Digikam::CollectionLocation const&) () at /usr/lib64/libdigikamdatabase.so.4.4.0
#25 0x00007fefb487cf3d in Digikam::CollectionScanner::completeScan() () at /usr/lib64/libdigikamdatabase.so.4.4.0
#26 0x0000000000602c6f in  ()
#27 0x00007fefb110879f in  () at /usr/lib64/libQtCore.so.4
#28 0x00007fefae2750a4 in start_thread () at /lib64/libpthread.so.0
#29 0x00007fefb03277fd in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7fef91364700 (LWP 25320)):
#0  0x00007fefb031f3cd in poll () at /lib64/libc.so.6
#1  0x00007fefa837fbe4 in  () at /usr/lib64/libglib-2.0.so.0
#2  0x00007fefa837fcec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#3  0x00007fefb12370de in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#4  0x00007fefb1208e6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#5  0x00007fefb1209165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#6  0x00007fefb11060bf in QThread::exec() () at /usr/lib64/libQtCore.so.4
#7  0x00007fefb11ea783 in  () at /usr/lib64/libQtCore.so.4
#8  0x00007fefb110879f in  () at /usr/lib64/libQtCore.so.4
#9  0x00007fefae2750a4 in start_thread () at /lib64/libpthread.so.0
#10 0x00007fefb03277fd in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7fefb7856880 (LWP 25317)):
#0  0x00007fefae27905f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007fefb1108c86 in QWaitCondition::wait(QMutex*, unsigned long) () at /usr/lib64/libQtCore.so.4
#2  0x00007fefb110836e in QThread::wait(unsigned long) () at /usr/lib64/libQtCore.so.4
#3  0x000000000060132b in  ()
#4  0x00000000006014a7 in  ()
#5  0x00007fefb0279bf9 in __run_exit_handlers () at /lib64/libc.so.6
#6  0x00007fefb0279c45 in  () at /lib64/libc.so.6
#7  0x00007fefb1c7efc8 in  () at /usr/lib64/libQtGui.so.4
#8  0x00007fefb292f760 in KApplication::xioErrhandler(_XDisplay*) () at /usr/lib64/libkdeui.so.5
#9  0x00007fefae8143be in _XIOError () at /usr/lib64/libX11.so.6
#10 0x00007fefae811dbd in _XEventsQueued () at /usr/lib64/libX11.so.6
#11 0x00007fefae803deb in XEventsQueued () at /usr/lib64/libX11.so.6
#12 0x00007fefb1cb50ec in  () at /usr/lib64/libQtGui.so.4
#13 0x00007fefa837f661 in g_main_context_check () at /usr/lib64/libglib-2.0.so.0
#14 0x00007fefa837fb7b in  () at /usr/lib64/libglib-2.0.so.0
#15 0x00007fefa837fcec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#16 0x00007fefb12370be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#17 0x00007fefb1cb5676 in  () at /usr/lib64/libQtGui.so.4
#18 0x00007fefb1208e6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#19 0x00007fefb1209165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#20 0x00000000005fe9b9 in  ()
#21 0x000000000052faa7 in  ()
#22 0x00007fefb122259e in QObject::event(QEvent*) () at /usr/lib64/libQtCore.so.4
#23 0x00007fefb1c1876c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#24 0x00007fefb1c1ecad in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#25 0x00007fefb2930baa in KApplication::notify(QObject*, QEvent*) () at /usr/lib64/libkdeui.so.5
#26 0x00007fefb120a2ad in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQtCore.so.4
#27 0x00007fefb120d57d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQtCore.so.4
#28 0x00007fefb12378fe in  () at /usr/lib64/libQtCore.so.4
#29 0x00007fefa837fa04 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#30 0x00007fefa837fc48 in  () at /usr/lib64/libglib-2.0.so.0
#31 0x00007fefa837fcec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#32 0x00007fefb12370be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#33 0x00007fefb1cb5676 in  () at /usr/lib64/libQtGui.so.4
#34 0x00007fefb1208e6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#35 0x00007fefb1209165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#36 0x00007fefb120e5b9 in QCoreApplication::exec() () at /usr/lib64/libQtCore.so.4
#37 0x00000000004a0710 in  ()
#38 0x00007fefb0263b05 in __libc_start_main () at /lib64/libc.so.6
#39 0x00000000004a2d5f in _start ()

Reported using DrKonqi
Comment 1 caulier.gilles 2015-01-08 05:38:21 UTC

*** This bug has been marked as a duplicate of bug 340373 ***
Comment 2 caulier.gilles 2018-02-28 12:39:06 UTC
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