Bug 307690

Summary: digikam crashed adding files to collection
Product: [Applications] digikam Reporter: Nico Kruber <nico.kruber>
Component: Portability-RuntimeAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: 2.9.0   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 5.1.0
Sentry Crash Report:

Description Nico Kruber 2012-10-01 21:43:01 UTC
Application: digikam (2.9.0)
KDE Platform Version: 4.9.1 "release 561"
Qt Version: 4.8.3
Operating System: Linux 3.4.6-2.10-desktop x86_64
Distribution: "openSUSE 12.2 (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:
I had digikam open with the calendar view, then added some files to my collection using dolphin.

- Custom settings of the application:
the path to my collection is actually a symlink to somewhere else if this is relevant

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

Thread 12 (Thread 0x7f078062b700 (LWP 7300)):
#0  0x00007f079767a265 in _int_free () from /lib64/libc.so.6
#1  0x00007f0793a7e3ad in Exiv2::Exifdatum::~Exifdatum() () from /usr/lib64/libexiv2.so.12
#2  0x00007f079bf72ebd in std::_List_base<Exiv2::Exifdatum, std::allocator<Exiv2::Exifdatum> >::_M_clear() () from /usr/lib64/libkexiv2.so.11
#3  0x00007f079bf85230 in KExiv2Iface::KExiv2::getExifTagVariant(char const*, bool, bool, int) const () from /usr/lib64/libkexiv2.so.11
#4  0x00007f079b7f23aa in Digikam::DMetadata::fromExifOrXmp(char const*, char const*) const () from /usr/lib64/libdigikamcore.so.2
#5  0x00007f079b7ef8a2 in Digikam::DMetadata::getMetadataField(Digikam::MetadataInfo::Field) const () from /usr/lib64/libdigikamcore.so.2
#6  0x00007f079b7eef2c in Digikam::DMetadata::getMetadataFields(QList<Digikam::MetadataInfo::Field> const&) const () from /usr/lib64/libdigikamcore.so.2
#7  0x00007f079b2096f5 in Digikam::ImageScanner::scanImageMetadata() () from /usr/lib64/libdigikamdatabase.so.2
#8  0x00007f079b20d843 in Digikam::ImageScanner::scanFile(Digikam::ImageScanner::ScanMode) () from /usr/lib64/libdigikamdatabase.so.2
#9  0x00007f079b1b45f8 in Digikam::CollectionScanner::scanNewFile(QFileInfo const&, int) () from /usr/lib64/libdigikamdatabase.so.2
#10 0x00007f079b1b7d59 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib64/libdigikamdatabase.so.2
#11 0x00007f079b1b7a27 in Digikam::CollectionScanner::scanAlbum(Digikam::CollectionLocation const&, QString const&) () from /usr/lib64/libdigikamdatabase.so.2
#12 0x00007f079b1b871b in Digikam::CollectionScanner::scanAlbumRoot(Digikam::CollectionLocation const&) () from /usr/lib64/libdigikamdatabase.so.2
#13 0x00007f079b1b9a62 in Digikam::CollectionScanner::partialScan(QString const&, QString const&) () from /usr/lib64/libdigikamdatabase.so.2
#14 0x00007f079b1b9ea4 in Digikam::CollectionScanner::partialScan(QString const&) () from /usr/lib64/libdigikamdatabase.so.2
#15 0x00000000005d1ade in ?? ()
#16 0x00007f079916ff9c in QThreadPrivate::start (arg=0x1b679c0) at thread/qthread_unix.cpp:338
#17 0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#18 0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 11 (Thread 0x7f077fe2a700 (LWP 7301)):
#0  0x00007f07992995b5 in postEventSourcePrepare (s=0x7f07700012d0, timeout=0x7f077fe29bac) at kernel/qeventdispatcher_glib.cpp:255
#1  0x00007f078fc43ebf in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f078fc445ab in ?? () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f078fc447a4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f0799299cf6 in QEventDispatcherGlib::processEvents (this=0x7f07700008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007f079926a85f in QEventLoop::processEvents (this=this@entry=0x7f077fe29d50, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f079926aae8 in QEventLoop::exec (this=0x7f077fe29d50, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007f079916cfc0 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#8  0x00007f079924afcf in QInotifyFileSystemWatcherEngine::run (this=0x153cfd0) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00007f079916ff9c in QThreadPrivate::start (arg=0x153cfd0) at thread/qthread_unix.cpp:338
#10 0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#11 0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 10 (Thread 0x7f077f629700 (LWP 7309)):
#0  0x00007f07956708f4 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f07991704fb in wait (time=18446744073709551615, this=0x1938bb0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x15a3b38, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f079b869149 in ?? () from /usr/lib64/libdigikamcore.so.2
#4  0x00007f079916ff9c in QThreadPrivate::start (arg=0x15a3b20) at thread/qthread_unix.cpp:338
#5  0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#6  0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 9 (Thread 0x7f0743fff700 (LWP 7750)):
#0  0x00007f0797637ec1 in getenv () from /lib64/libc.so.6
#1  0x00007f07976307f6 in __dcigettext () from /lib64/libc.so.6
#2  0x00007f079977ac22 in ?? () from /usr/lib64/libkdecore.so.5
#3  0x00007f0799791549 in ?? () from /usr/lib64/libkdecore.so.5
#4  0x00007f079978a3a0 in ?? () from /usr/lib64/libkdecore.so.5
#5  0x00007f0799786341 in KLocale::translateQt(char const*, char const*, char const*) const () from /usr/lib64/libkdecore.so.5
#6  0x00007f079970dacc in ?? () from /usr/lib64/libkdecore.so.5
#7  0x00007f079928a9ca in QTranslator::translate (this=<optimized out>, context=<optimized out>, sourceText=<optimized out>, disambiguation=<optimized out>, n=<optimized out>) at kernel/qtranslator.cpp:1004
#8  0x00007f079926c125 in QCoreApplication::translate (context=0x7f077ec256a2 "QSQLiteResult", sourceText=0x7f077ec2579e "Unable to fetch row", disambiguation=0x0, encoding=QCoreApplication::CodecForTr, n=n@entry=-1) at kernel/qcoreapplication.cpp:1934
#9  0x00007f079926c4ff in QCoreApplication::translate (context=<optimized out>, sourceText=<optimized out>, disambiguation=<optimized out>, encoding=<optimized out>) at kernel/qcoreapplication.cpp:1849
#10 0x00007f077ec23cbd in ?? () from /usr/lib64/qt4/plugins/sqldrivers/libqsqlite.so
#11 0x00007f077ec24a27 in ?? () from /usr/lib64/qt4/plugins/sqldrivers/libqsqlite.so
#12 0x00007f079dbab467 in QSqlQuery::exec() () from /usr/lib64/libQtSql.so.4
#13 0x00007f079b80f8a1 in Digikam::DatabaseCoreBackend::exec(Digikam::SqlQuery&) () from /usr/lib64/libdigikamcore.so.2
#14 0x00007f079b811282 in Digikam::DatabaseCoreBackend::execQuery(Digikam::SqlQuery&, QVariant const&, QVariant const&, QVariant const&, QVariant const&) () from /usr/lib64/libdigikamcore.so.2
#15 0x00007f079b8112fa in Digikam::DatabaseCoreBackend::execQuery(QString const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&) () from /usr/lib64/libdigikamcore.so.2
#16 0x00007f079b811355 in Digikam::DatabaseCoreBackend::execSql(QString const&, QVariant const&, QVariant const&, QVariant const&, QVariant const&, QList<QVariant>*, QVariant*) () from /usr/lib64/libdigikamcore.so.2
#17 0x00007f079b81c8ed in Digikam::ThumbnailDB::insertThumbnail(Digikam::DatabaseThumbnailInfo const&, QVariant*) () from /usr/lib64/libdigikamcore.so.2
#18 0x00007f079b845844 in Digikam::ThumbnailCreator::storeInDatabase(Digikam::ThumbnailInfo const&, Digikam::ThumbnailImage const&) const () from /usr/lib64/libdigikamcore.so.2
#19 0x00007f079b84b051 in Digikam::ThumbnailCreator::load(QString const&, QRect const&, bool) const () from /usr/lib64/libdigikamcore.so.2
#20 0x00007f079b84befc in Digikam::ThumbnailCreator::pregenerate(QString const&) const () from /usr/lib64/libdigikamcore.so.2
#21 0x00007f079b858d60 in ?? () from /usr/lib64/libdigikamcore.so.2
#22 0x00007f079b82c1ce in Digikam::LoadSaveThread::run() () from /usr/lib64/libdigikamcore.so.2
#23 0x00007f079b86a8fe in Digikam::DynamicThread::DynamicThreadPriv::run() () from /usr/lib64/libdigikamcore.so.2
#24 0x00007f0799163b6d in QThreadPoolThread::run (this=0x3099a80) at concurrent/qthreadpool.cpp:107
#25 0x00007f079916ff9c in QThreadPrivate::start (arg=0x3099a80) at thread/qthread_unix.cpp:338
#26 0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#27 0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 8 (Thread 0x7f0733fff700 (LWP 7752)):
#0  0x00007f07976e1ec9 in syscall () from /lib64/libc.so.6
#1  0x00007f079916ea44 in _q_futex (timeout=0x0, val=2, op=0, addr=0x154fdf0, addr2=<optimized out>, val2=<optimized out>) at thread/qmutex_unix.cpp:99
#2  QMutexPrivate::wait (this=0x154fdf0, timeout=<optimized out>) at thread/qmutex_unix.cpp:113
#3  0x00007f079916ad7d in QMutex::lock (this=<optimized out>) at thread/qmutex.cpp:164
#4  0x00007f079b81acf4 in Digikam::ThumbnailDatabaseAccess::ThumbnailDatabaseAccess() () from /usr/lib64/libdigikamcore.so.2
#5  0x00007f079b8456f2 in Digikam::ThumbnailCreator::storeInDatabase(Digikam::ThumbnailInfo const&, Digikam::ThumbnailImage const&) const () from /usr/lib64/libdigikamcore.so.2
#6  0x00007f079b84b051 in Digikam::ThumbnailCreator::load(QString const&, QRect const&, bool) const () from /usr/lib64/libdigikamcore.so.2
#7  0x00007f079b84b9f2 in Digikam::ThumbnailCreator::load(QString const&) const () from /usr/lib64/libdigikamcore.so.2
#8  0x00007f079b858cf7 in ?? () from /usr/lib64/libdigikamcore.so.2
#9  0x00007f079b82c1ce in Digikam::LoadSaveThread::run() () from /usr/lib64/libdigikamcore.so.2
#10 0x00007f079b86a8fe in Digikam::DynamicThread::DynamicThreadPriv::run() () from /usr/lib64/libdigikamcore.so.2
#11 0x00007f0799163b6d in QThreadPoolThread::run (this=0x34ce630) at concurrent/qthreadpool.cpp:107
#12 0x00007f079916ff9c in QThreadPrivate::start (arg=0x34ce630) at thread/qthread_unix.cpp:338
#13 0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#14 0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 7 (Thread 0x7f07496e3700 (LWP 7753)):
#0  0x00007f0793585836 in ?? () from /usr/lib64/libgomp.so.1
#1  0x00007f07935840ce in ?? () from /usr/lib64/libgomp.so.1
#2  0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#3  0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7f077cb19700 (LWP 7754)):
#0  0x00007f0793585836 in ?? () from /usr/lib64/libgomp.so.1
#1  0x00007f07935840ce in ?? () from /usr/lib64/libgomp.so.1
#2  0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#3  0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f076b586700 (LWP 7755)):
#0  0x00007f0793585836 in ?? () from /usr/lib64/libgomp.so.1
#1  0x00007f07935840ce in ?? () from /usr/lib64/libgomp.so.1
#2  0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#3  0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f076a48f700 (LWP 7787)):
#0  0x00007f0793585836 in ?? () from /usr/lib64/libgomp.so.1
#1  0x00007f07935840ce in ?? () from /usr/lib64/libgomp.so.1
#2  0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#3  0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f0748a4a700 (LWP 7788)):
#0  0x00007f0793585836 in ?? () from /usr/lib64/libgomp.so.1
#1  0x00007f07935840ce in ?? () from /usr/lib64/libgomp.so.1
#2  0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#3  0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f07437fe700 (LWP 7789)):
#0  0x00007f0793585836 in ?? () from /usr/lib64/libgomp.so.1
#1  0x00007f07935840ce in ?? () from /usr/lib64/libgomp.so.1
#2  0x00007f079566ce0e in start_thread () from /lib64/libpthread.so.0
#3  0x00007f07976e52bd in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f0785227800 (LWP 7298)):
[KCrash Handler]
#6  0x00000000005e55fb in ?? ()
#7  0x00007f079928239f in QMetaObject::activate (sender=0x163a0e0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff32fe10e0) at kernel/qobject.cpp:3556
#8  0x000000000059e223 in ?? ()
#9  0x00000000005ab722 in ?? ()
#10 0x00007f079928239f in QMetaObject::activate (sender=0x350f820, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff32fe1480) at kernel/qobject.cpp:3556
#11 0x00007f079a41e234 in KIO::TransferJob::data (this=this@entry=0x350f820, _t1=_t1@entry=0x350f820, _t2=...) at /usr/src/debug/kdelibs-4.9.1/build/kio/jobclasses.moc:447
#12 0x00007f079a41e293 in KIO::TransferJob::slotData (this=0x350f820, _data=...) at /usr/src/debug/kdelibs-4.9.1/kio/kio/job.cpp:981
#13 0x00007f079928239f in QMetaObject::activate (sender=0x5224270, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff32fe1630) at kernel/qobject.cpp:3556
#14 0x00007f079a4bb6c2 in KIO::SlaveInterface::data (this=this@entry=0x5224270, _t1=...) at /usr/src/debug/kdelibs-4.9.1/build/kio/slaveinterface.moc:160
#15 0x00007f079a4be1d0 in KIO::SlaveInterface::dispatch (this=0x5224270, _cmd=100, rawdata=...) at /usr/src/debug/kdelibs-4.9.1/kio/kio/slaveinterface.cpp:160
#16 0x00007f079a4bb01a in KIO::SlaveInterface::dispatch (this=0x5224270) at /usr/src/debug/kdelibs-4.9.1/kio/kio/slaveinterface.cpp:88
#17 0x00007f079a4af47e in KIO::Slave::gotInput (this=0x5224270) at /usr/src/debug/kdelibs-4.9.1/kio/kio/slave.cpp:344
#18 0x00007f079928239f in QMetaObject::activate (sender=0x5eb21f0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3556
#19 0x00007f079a3f1ba2 in dequeue (this=<optimized out>) at /usr/src/debug/kdelibs-4.9.1/kio/kio/connection.cpp:82
#20 KIO::ConnectionPrivate::dequeue (this=0xbf85bf0) at /usr/src/debug/kdelibs-4.9.1/kio/kio/connection.cpp:71
#21 0x00007f07992804ee in QObject::event (this=0x5eb21f0, e=<optimized out>) at kernel/qobject.cpp:1204
#22 0x00007f079839974c in QApplicationPrivate::notify_helper (this=this@entry=0x1330370, receiver=receiver@entry=0x5eb21f0, e=e@entry=0x5eb2f60) at kernel/qapplication.cpp:4557
#23 0x00007f079839dbca in QApplication::notify (this=0x7fff32fe2930, receiver=0x5eb21f0, e=0x5eb2f60) at kernel/qapplication.cpp:4418
#24 0x00007f0799cc80d6 in KApplication::notify (this=0x7fff32fe2930, receiver=0x5eb21f0, event=0x5eb2f60) at /usr/src/debug/kdelibs-4.9.1/kdeui/kernel/kapplication.cpp:311
#25 0x00007f079926bb0e in QCoreApplication::notifyInternal (this=0x7fff32fe2930, receiver=receiver@entry=0x5eb21f0, event=event@entry=0x5eb2f60) at kernel/qcoreapplication.cpp:915
#26 0x00007f079926f471 in sendEvent (event=0x5eb2f60, receiver=0x5eb21f0) at kernel/qcoreapplication.h:231
#27 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x12c51d0) at kernel/qcoreapplication.cpp:1539
#28 0x00007f0799299b43 in sendPostedEvents () at kernel/qcoreapplication.h:236
#29 postEventSourceDispatch (s=0x132fd40) at kernel/qeventdispatcher_glib.cpp:279
#30 0x00007f078fc443b5 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#31 0x00007f078fc446e8 in ?? () from /usr/lib64/libglib-2.0.so.0
#32 0x00007f078fc447a4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#33 0x00007f0799299cd6 in QEventDispatcherGlib::processEvents (this=0x12ca660, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#34 0x00007f0798439a5e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#35 0x00007f079926a85f in QEventLoop::processEvents (this=this@entry=0x7fff32fe2340, flags=...) at kernel/qeventloop.cpp:149
#36 0x00007f079926aae8 in QEventLoop::exec (this=0x7fff32fe2340, flags=...) at kernel/qeventloop.cpp:204
#37 0x00007f079926f788 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#38 0x00000000004999be in ?? ()
#39 0x00007f0797622455 in __libc_start_main () from /lib64/libc.so.6
#40 0x000000000049b0a1 in _start ()

Possible duplicates by query: bug 302714, bug 302178, bug 297845, bug 287849, bug 287429.

Reported using DrKonqi
Comment 1 caulier.gilles 2012-10-02 07:11:40 UTC
The backtrace do not show digiKam code relevant of the problem. Sound like more a KIO KDELibs stuff.

Try to get a better backtrace to run digiKam in GDB directly :

http://www.digikam.org/drupal/contrib

Gilles Caulier
Comment 2 caulier.gilles 2015-06-27 13:46:14 UTC
New digiKam 4.11.0 is available :

https://www.digikam.org/node/740

Can you reproduce the problem with this release ?

Gilles caulier
Comment 3 caulier.gilles 2015-08-21 07:06:13 UTC
digiKam 4.12.0 is out :

https://www.digikam.org/node/741

We need a fresh feedback using this release please...
Thanks in advance.
Comment 4 caulier.gilles 2016-07-09 12:21:28 UTC
This problem is not reproducible with last 5.0.0.
I close this file now. Don't hesitate to re-open it if necessary.
Gilles Caulier