Bug 320292

Summary: crash while entering person names
Product: [Applications] digikam Reporter: Tobias Vogt <tobias.vogt>
Component: Faces-EngineAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: 3.1.0   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In: 5.7.0

Description Tobias Vogt 2013-05-26 09:04:25 UTC
Application: digikam (3.1.0)
KDE Platform Version: 4.10.3
Qt Version: 4.8.4
Operating System: Linux 3.8.9-200.fc18.i686 i686
Distribution: "Fedora release 18 (Spherical Cow)"

-- Information about the crash:
- What I was doing when the application crashed:

I was trying to categorize photos by person using the results of the automatic detection. I had added a few persons and I had tagged some photos. The crash occured when I was entering a person name into the widget on the photo. 

It happend twice while in the "thumbnail view" and also once while in the "photo view". The crash occured three times, making the automatic photo detection (which worked fine per se) nearly useless.

The crash can be reproduced every time.

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

Thread 9 (Thread 0xb63b8b40 (LWP 9773)):
#0  0xb778f424 in __kernel_vsyscall ()
#1  0x4ba9318c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x4c775b68 in QWaitCondition::wait(QMutex*, unsigned long) () from /lib/libQtCore.so.4
#3  0x0820ba5e in Digikam::ScanController::run() ()
#4  0x4c77556a in QThreadPrivate::start(void*) () from /lib/libQtCore.so.4
#5  0x4ba8faff in start_thread () from /lib/libpthread.so.0
#6  0x4b9c60be in clone () from /lib/libc.so.6

Thread 8 (Thread 0xb59ffb40 (LWP 9774)):
#0  0x4baafdad in clock_gettime () from /lib/librt.so.1
#1  0x4c7d4cf6 in qt_gettime() () from /lib/libQtCore.so.4
#2  0x4c8be5ff in QTimerInfoList::updateCurrentTime() () from /lib/libQtCore.so.4
#3  0x7fffffff in ?? ()
#4  0x4c8be9bb in QTimerInfoList::timerWait(timeval&) () from /lib/libQtCore.so.4
#5  0x7fffffff in ?? ()

Thread 7 (Thread 0xb4fffb40 (LWP 9776)):
#0  0xb778f424 in __kernel_vsyscall ()
#1  0x4ba9318c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x4c775b68 in QWaitCondition::wait(QMutex*, unsigned long) () from /lib/libQtCore.so.4
#3  0x454d360c in Digikam::ParkingThread::run() () from /lib/libdigikamcore.so.3
#4  0x4c77556a in QThreadPrivate::start(void*) () from /lib/libQtCore.so.4
#5  0x4ba8faff in start_thread () from /lib/libpthread.so.0
#6  0x4b9c60be in clone () from /lib/libc.so.6

Thread 6 (Thread 0xaa28db40 (LWP 9789)):
#0  0xb778f424 in __kernel_vsyscall ()
#1  0x4b9c2297 in syscall () from /lib/libc.so.6
#2  0x4c773dd7 in QMutexPrivate::wait(int) () from /lib/libQtCore.so.4
#3  0x4c76fbe8 in QMutex::lock() () from /lib/libQtCore.so.4
#4  0x45492b0a in Digikam::ThumbnailDatabaseAccess::ThumbnailDatabaseAccess() () from /lib/libdigikamcore.so.3
#5  0x454bc5f3 in Digikam::ThumbnailCreator::storeInDatabase(Digikam::ThumbnailInfo const&, Digikam::ThumbnailImage const&) const () from /lib/libdigikamcore.so.3
#6  0x454c0018 in Digikam::ThumbnailCreator::load(QString const&, QRect const&, bool) const () from /lib/libdigikamcore.so.3
#7  0x454c0aa3 in Digikam::ThumbnailCreator::load(QString const&) const () from /lib/libdigikamcore.so.3
#8  0x0e21eb48 in ?? ()
#9  0x00000038 in ?? ()
#10 0x0000002f in ?? ()
#11 0x0000000a in ?? ()
#12 0x0000001a in ?? ()
#13 0x00000004 in ?? ()
#14 0x00000071 in ?? ()
#15 0x00000000 in ?? ()

Thread 5 (Thread 0xa6a86b40 (LWP 9856)):
#0  0xb778f424 in __kernel_vsyscall ()
#1  0x4ba961db in read () from /lib/libpthread.so.0
#2  0x4bc45bc6 in g_wakeup_acknowledge () from /lib/libglib-2.0.so.0
#3  0x4bc03fab in g_main_context_check () from /lib/libglib-2.0.so.0
#4  0x4bc04412 in g_main_context_iterate.isra.22 () from /lib/libglib-2.0.so.0
#5  0x4bc045e2 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#6  0x4c8bdadf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#7  0x4c889a6d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#8  0x4c889d69 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#9  0x454d2b8d in Digikam::WorkerObjectRunnable::run() () from /lib/libdigikamcore.so.3
#10 0x4c76806c in QThreadPoolThread::run() () from /lib/libQtCore.so.4
#11 0x4c77556a in QThreadPrivate::start(void*) () from /lib/libQtCore.so.4
#12 0x4ba8faff in start_thread () from /lib/libpthread.so.0
#13 0x4b9c60be in clone () from /lib/libc.so.6

Thread 4 (Thread 0xab7ffb40 (LWP 9857)):
#0  0x4baafdad in clock_gettime () from /lib/librt.so.1
#1  0x4c7d4cf6 in qt_gettime() () from /lib/libQtCore.so.4
#2  0x4c8be5ff in QTimerInfoList::updateCurrentTime() () from /lib/libQtCore.so.4
#3  0x7fffffff in ?? ()
#4  0x4c8be9bb in QTimerInfoList::timerWait(timeval&) () from /lib/libQtCore.so.4
#5  0x7fffffff in ?? ()

Thread 3 (Thread 0xa2a7eb40 (LWP 9901)):
#0  0x4bc46660 in g_mutex_get_impl () from /lib/libglib-2.0.so.0
#1  0x4bc46959 in g_mutex_lock () from /lib/libglib-2.0.so.0
#2  0x4bc03c8e in g_main_context_prepare () from /lib/libglib-2.0.so.0
#3  0x4bc0437f in g_main_context_iterate.isra.22 () from /lib/libglib-2.0.so.0
#4  0x4bc045e2 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0x4c8bdadf in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#6  0x4c889a6d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#7  0x4c889d69 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#8  0x454d2b8d in Digikam::WorkerObjectRunnable::run() () from /lib/libdigikamcore.so.3
#9  0x4c76806c in QThreadPoolThread::run() () from /lib/libQtCore.so.4
#10 0x4c77556a in QThreadPrivate::start(void*) () from /lib/libQtCore.so.4
#11 0x4ba8faff in start_thread () from /lib/libpthread.so.0
#12 0x4b9c60be in clone () from /lib/libc.so.6

Thread 2 (Thread 0xa741ab40 (LWP 9970)):
#0  0x5010399e in KCatalog::translateStrict(char const*, char const*) const () from /lib/libkdecore.so.5
#1  0x5011dcfa in KLocalePrivate::translateRawFrom(char const*, char const*, char const*, char const*, unsigned long, QString*, QString*) const () from /lib/libkdecore.so.5
#2  0x085ac640 in ?? ()
#3  0x4c76ddf6 in qMalloc(unsigned int) () from /lib/libQtCore.so.4
#4  0x4c7d4a45 in QVectorData::allocate(int, int) () from /lib/libQtCore.so.4
#5  0x4c9f7560 in ?? () from /lib/libQtCore.so.4
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 1 (Thread 0xb773d900 (LWP 9772)):
[KCrash Handler]
#6  0x4cc37078 in QPixmap::~QPixmap() () from /lib/libQtGui.so.4
#7  0x4cb8e585 in clear(QVariant::Private*) () from /lib/libQtGui.so.4
#8  0x4c8ae67b in QVariant::~QVariant() () from /lib/libQtCore.so.4
#9  0x4863aa2e in Digikam::ImageModel::removeRowPairs(QList<QPair<int, int> > const&) () from /lib/libdigikamdatabase.so.3
#10 0x4863cf41 in Digikam::ImageModel::finishIncrementalRefresh() () from /lib/libdigikamdatabase.so.3
#11 0x081a68a7 in Digikam::ImageAlbumModel::slotResult(KJob*) ()
#12 0x4c8a224e in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /lib/libQtCore.so.4
#13 0x500690a6 in KJob::result(KJob*) () from /lib/libkdecore.so.5
#14 0x500690f9 in KJob::emitResult() () from /lib/libkdecore.so.5
#15 0x41bf439b in KIO::SimpleJob::slotFinished() () from /lib/libkio.so.5
#16 0x41bfd37e in KIO::TransferJob::slotFinished() () from /lib/libkio.so.5
#17 0x41bfb5b8 in KIO::TransferJob::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /lib/libkio.so.5
#18 0x4c8a224e in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /lib/libQtCore.so.4
#19 0x41caa106 in KIO::SlaveInterface::finished() () from /lib/libkio.so.5
#20 0x41cad033 in KIO::SlaveInterface::dispatch(int, QByteArray const&) () from /lib/libkio.so.5
#21 0x41ca979b in KIO::SlaveInterface::dispatch() () from /lib/libkio.so.5
#22 0x41c9c0b8 in KIO::Slave::gotInput() () from /lib/libkio.so.5
#23 0x41c9c714 in KIO::Slave::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /lib/libkio.so.5
#24 0x4c8a224e in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /lib/libQtCore.so.4
#25 0x41bc21b6 in KIO::Connection::readyRead() () from /lib/libkio.so.5
#26 0x41bc2818 in KIO::ConnectionPrivate::dequeue() () from /lib/libkio.so.5
#27 0x4c89d0db in QMetaCallEvent::placeMetaCall(QObject*) () from /lib/libQtCore.so.4
#28 0x4c8a1743 in QObject::event(QEvent*) () from /lib/libQtCore.so.4
#29 0x4cb5106c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/libQtGui.so.4
#30 0x4cb55b2f in QApplication::notify(QObject*, QEvent*) () from /lib/libQtGui.so.4
#31 0x4154a002 in KApplication::notify(QObject*, QEvent*) () from /lib/libkdeui.so.5
#32 0x4c88b07e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /lib/libQtCore.so.4
#33 0x4c88f025 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib/libQtCore.so.4
#34 0x4c88f2ad in QCoreApplication::sendPostedEvents(QObject*, int) () from /lib/libQtCore.so.4
#35 0x4c8bd935 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib/libQtCore.so.4
#36 0x4bc0415b in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#37 0x4bc04500 in g_main_context_iterate.isra.22 () from /lib/libglib-2.0.so.0
#38 0x4bc045e2 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#39 0x4c8bdac2 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#40 0x4cc0370b in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtGui.so.4
#41 0x4c889a6d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#42 0x4c889d69 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/libQtCore.so.4
#43 0x4c88f35b in QCoreApplication::exec() () from /lib/libQtCore.so.4
#44 0x4cb4eee5 in QApplication::exec() () from /lib/libQtGui.so.4
#45 0x080ba216 in main ()

Reported using DrKonqi
Comment 1 caulier.gilles 2013-05-26 09:34:17 UTC

*** This bug has been marked as a duplicate of bug 317413 ***
Comment 2 caulier.gilles 2017-07-16 21:56:32 UTC
This problem is not reproducible since 5.0.0 as all digiKam KIO-slaves was been
replaced by a multithreaded interface to play with database.