Bug 296281

Summary: Digikam crashed while manually adding a face
Product: [Applications] digikam Reporter: Frederic Grelot <fredericg_99>
Component: Faces-EngineAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In: 7.0.0
Sentry Crash Report:

Description Frederic Grelot 2012-03-18 15:31:21 UTC
Application: digikam (2.6.0-beta3)
KDE Platform Version: 4.7.4 (4.7.4)
Qt Version: 4.8.0
Operating System: Linux 3.2.9-2.fc16.x86_64 x86_64
Distribution (Platform): Fedora RPMs

-- Information about the crash:
- What I was doing when the application crashed:
I was giving names to faces. In an image, I knew they were two people, and only one of them had been detected. I clicked on the image, used the small button to "add a face Tag". I drew the square, moved and resized it a little, and when it was at the correct place and I wanted to go back to the view with all the faces to tag... bang!

After restarting, I can see that the tag square is there, at the correct place (so the last move was beeing saved).

Digikam is in version 2.6.0-beta3 (built from source)

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

Thread 9 (Thread 0x7fc252a01700 (LWP 18638)):
#0  0x000000389b80bae5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00000038ac07c07b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00000000005d1880 in Digikam::ScanController::run (this=0x14845a0) at /home/goulou/digikam/digikam-sc/core/digikam/database/scancontroller.cpp:647
#3  0x00000038ac07bb6b in ?? () from /usr/lib64/libQtCore.so.4
#4  0x000000389b807d90 in start_thread () from /lib64/libpthread.so.0
#5  0x000000389b4f0f5d in clone () from /lib64/libc.so.6

Thread 8 (Thread 0x7fc252200700 (LWP 18642)):
#0  0x000000389b809dc4 in pthread_mutex_lock () from /lib64/libpthread.so.0
#1  0x000000389d4447cf in g_main_context_check () from /lib64/libglib-2.0.so.0
#2  0x000000389d444ff2 in ?? () from /lib64/libglib-2.0.so.0
#3  0x000000389d44549c in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#4  0x00000038ac1a7dc6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#5  0x00000038ac178182 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#6  0x00000038ac1783d7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#7  0x00000038ac078b27 in QThread::exec() () from /usr/lib64/libQtCore.so.4
#8  0x00000038ac157e7f in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00000038ac07bb6b in ?? () from /usr/lib64/libQtCore.so.4
#10 0x000000389b807d90 in start_thread () from /lib64/libpthread.so.0
#11 0x000000389b4f0f5d in clone () from /lib64/libc.so.6

Thread 7 (Thread 0x7fc2519ff700 (LWP 18687)):
#0  0x000000389b80bae5 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00000038ac07c07b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007fc262b36aa9 in Digikam::ParkingThread::run (this=0x168d7a0) at /home/goulou/digikam/digikam-sc/core/libs/threads/threadmanager.cpp:119
#3  0x00000038ac07bb6b in ?? () from /usr/lib64/libQtCore.so.4
#4  0x000000389b807d90 in start_thread () from /lib64/libpthread.so.0
#5  0x000000389b4f0f5d in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7fc22c8d2700 (LWP 25128)):
#0  0x000000389b80e62d in read () from /lib64/libpthread.so.0
#1  0x00007fc250b4aa42 in ?? () from /usr/lib64/mysql/libmysqlclient.so.18
#2  0x00007fc250b3cb4f in ?? () from /usr/lib64/mysql/libmysqlclient.so.18
#3  0x00007fc250b3d72a in ?? () from /usr/lib64/mysql/libmysqlclient.so.18
#4  0x00007fc250b36f05 in ?? () from /usr/lib64/mysql/libmysqlclient.so.18
#5  0x00007fc250b37f48 in ?? () from /usr/lib64/mysql/libmysqlclient.so.18
#6  0x00007fc250b339d4 in ?? () from /usr/lib64/mysql/libmysqlclient.so.18
#7  0x00007fc250b34237 in ?? () from /usr/lib64/mysql/libmysqlclient.so.18
#8  0x00007fc250b3537d in mysql_stmt_execute () from /usr/lib64/mysql/libmysqlclient.so.18
#9  0x00007fc250ff9bd3 in ?? () from /usr/lib64/qt4/plugins/sqldrivers/libqsqlmysql.so
#10 0x00000038bc211765 in QSqlQuery::exec() () from /usr/lib64/libQtSql.so.4
#11 0x00007fc262ad6c11 in exec (query=<optimized out>, this=<optimized out>) at /home/goulou/digikam/digikam-sc/core/libs/database/databasecorebackend.cpp:1406
#12 Digikam::DatabaseCoreBackend::exec (this=0x14b9310, query=...) at /home/goulou/digikam/digikam-sc/core/libs/database/databasecorebackend.cpp:1390
#13 0x00007fc262ad8824 in Digikam::DatabaseCoreBackend::execQuery (this=0x14b9310, query=..., boundValue1=<optimized out>) at /home/goulou/digikam/digikam-sc/core/libs/database/databasecorebackend.cpp:1049
#14 0x00007fc262ad886f in Digikam::DatabaseCoreBackend::execQuery (this=0x14b9310, sql=<optimized out>, boundValue1=...) at /home/goulou/digikam/digikam-sc/core/libs/database/databasecorebackend.cpp:998
#15 0x00007fc262ad8f0d in Digikam::DatabaseCoreBackend::execSql (this=0x14b9310, sql=<optimized out>, boundValue1=<optimized out>, values=0x7fc22c8d1460, lastInsertId=0x0) at /home/goulou/digikam/digikam-sc/core/libs/database/databasecorebackend.cpp:896
#16 0x00007fc26241c4d2 in Digikam::AlbumDB::getImagesFields (this=0x14b9490, imageID=53893, fields=...) at /home/goulou/digikam/digikam-sc/core/libs/database/albumdb.cpp:1494
#17 0x00007fc262458b07 in Digikam::DatabaseThumbnailInfoProvider::thumbnailInfo (this=<optimized out>, path=<optimized out>) at /home/goulou/digikam/digikam-sc/core/libs/database/databasethumbnailinfoprovider.cpp:60
#18 0x00007fc262b1559e in Digikam::ThumbnailCreator::makeThumbnailInfo (this=0x1750550, path=..., rect=...) at /home/goulou/digikam/digikam-sc/core/libs/threadimageio/thumbnailcreator.cpp:346
#19 0x00007fc262b18d7c in Digikam::ThumbnailCreator::load (this=0x1750550, path=..., rect=..., pregenerate=true) at /home/goulou/digikam/digikam-sc/core/libs/threadimageio/thumbnailcreator.cpp:226
#20 0x00007fc262b1a1cd in Digikam::ThumbnailCreator::pregenerate (this=<optimized out>, path=<optimized out>) at /home/goulou/digikam/digikam-sc/core/libs/threadimageio/thumbnailcreator.cpp:181
#21 0x00007fc262b28920 in Digikam::ThumbnailLoadingTask::execute (this=0x969da80) at /home/goulou/digikam/digikam-sc/core/libs/threadimageio/thumbnailtask.cpp:80
#22 0x00007fc262af891e in Digikam::LoadSaveThread::run (this=0x17621b0) at /home/goulou/digikam/digikam-sc/core/libs/threadimageio/loadsavethread.cpp:136
#23 0x00007fc262b383be in Digikam::DynamicThread::DynamicThreadPriv::run (this=0x1761f70) at /home/goulou/digikam/digikam-sc/core/libs/threads/dynamicthread.cpp:186
#24 0x00000038ac06f4e2 in ?? () from /usr/lib64/libQtCore.so.4
#25 0x00000038ac07bb6b in ?? () from /usr/lib64/libQtCore.so.4
#26 0x000000389b807d90 in start_thread () from /lib64/libpthread.so.0
#27 0x000000389b4f0f5d in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7fc241070700 (LWP 25129)):
#0  0x000000389b4e85c3 in poll () from /lib64/libc.so.6
#1  0x000000389d444fd8 in ?? () from /lib64/libglib-2.0.so.0
#2  0x000000389d44549c in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00000038ac1a7dc6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#4  0x00000038ac178182 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#5  0x00000038ac1783d7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#6  0x00007fc262b360be in Digikam::WorkerObjectRunnable::run (this=0x7fc2140e4620) at /home/goulou/digikam/digikam-sc/core/libs/threads/threadmanager.cpp:196
#7  0x00000038ac06f4e2 in ?? () from /usr/lib64/libQtCore.so.4
#8  0x00000038ac07bb6b in ?? () from /usr/lib64/libQtCore.so.4
#9  0x000000389b807d90 in start_thread () from /lib64/libpthread.so.0
#10 0x000000389b4f0f5d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7fc226138700 (LWP 27999)):
#0  0x000000389d44477a in g_main_context_check () from /lib64/libglib-2.0.so.0
#1  0x000000389d444ff2 in ?? () from /lib64/libglib-2.0.so.0
#2  0x000000389d44549c in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00000038ac1a7dc6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#4  0x00000038ac178182 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#5  0x00000038ac1783d7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#6  0x00007fc262b360be in Digikam::WorkerObjectRunnable::run (this=0x63eaff0) at /home/goulou/digikam/digikam-sc/core/libs/threads/threadmanager.cpp:196
#7  0x00000038ac06f4e2 in ?? () from /usr/lib64/libQtCore.so.4
#8  0x00000038ac07bb6b in ?? () from /usr/lib64/libQtCore.so.4
#9  0x000000389b807d90 in start_thread () from /lib64/libpthread.so.0
#10 0x000000389b4f0f5d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7fc227fff700 (LWP 28033)):
#0  0x000000389b80be4f in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00000038ac07bfdf in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00000038ac06f5af in ?? () from /usr/lib64/libQtCore.so.4
#3  0x00000038ac07bb6b in ?? () from /usr/lib64/libQtCore.so.4
#4  0x000000389b807d90 in start_thread () from /lib64/libpthread.so.0
#5  0x000000389b4f0f5d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7fc2277fe700 (LWP 28254)):
#0  0x000000389b80af9d in pthread_mutex_unlock () from /lib64/libpthread.so.0
#1  0x000000389d444054 in g_main_context_prepare () from /lib64/libglib-2.0.so.0
#2  0x000000389d444e6d in ?? () from /lib64/libglib-2.0.so.0
#3  0x000000389d44549c in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#4  0x00000038ac1a7dc6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#5  0x00000038ac178182 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#6  0x00000038ac1783d7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#7  0x00007fc262b360be in Digikam::WorkerObjectRunnable::run (this=0x7fe1f60) at /home/goulou/digikam/digikam-sc/core/libs/threads/threadmanager.cpp:196
#8  0x00000038ac06f4e2 in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00000038ac07bb6b in ?? () from /usr/lib64/libQtCore.so.4
#10 0x000000389b807d90 in start_thread () from /lib64/libpthread.so.0
#11 0x000000389b4f0f5d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fc26235aa40 (LWP 18626)):
[KCrash Handler]
#6  0x00000038aebf79e3 in QPalette::~QPalette() () from /usr/lib64/libQtGui.so.4
#7  0x00000038aec0101d in ?? () from /usr/lib64/libQtGui.so.4
#8  0x00007fc262510218 in node_destruct (n=0x779ff08, this=0x1705408) at /usr/include/QtCore/qlist.h:388
#9  erase (alast=<optimized out>, afirst=<optimized out>, this=0x1705408) at /usr/include/QtCore/qlist.h:803
#10 Digikam::ImageModel::removeRowPairs (this=0x17047e0, toRemove=...) at /home/goulou/digikam/digikam-sc/core/libs/models/imagemodel.cpp:901
#11 0x00007fc262511d8d in Digikam::ImageModel::finishIncrementalRefresh (this=0x17047e0) at /home/goulou/digikam/digikam-sc/core/libs/models/imagemodel.cpp:720
#12 0x000000000056c895 in Digikam::ImageAlbumModel::slotResult (this=0x17047e0, job=<optimized out>) at /home/goulou/digikam/digikam-sc/core/libs/models/imagealbummodel.cpp:307
#13 0x00000038ac18cce1 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/libQtCore.so.4
#14 0x00000038afd41d92 in KJob::result(KJob*) () from /usr/lib64/libkdecore.so.5
#15 0x00000038afd41dd0 in KJob::emitResult() () from /usr/lib64/libkdecore.so.5
#16 0x00000038b5efbb54 in KIO::SimpleJob::slotFinished() () from /usr/lib64/libkio.so.5
#17 0x00000038b5f03602 in KIO::TransferJob::slotFinished() () from /usr/lib64/libkio.so.5
#18 0x00000038ac18cce1 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/libQtCore.so.4
#19 0x00000038b5fa8b21 in KIO::SlaveInterface::dispatch(int, QByteArray const&) () from /usr/lib64/libkio.so.5
#20 0x00000038b5fa59e5 in KIO::SlaveInterface::dispatch() () from /usr/lib64/libkio.so.5
#21 0x00000038b5f98ace in KIO::Slave::gotInput() () from /usr/lib64/libkio.so.5
#22 0x00000038ac18cce1 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib64/libQtCore.so.4
#23 0x00000038b5ecce67 in ?? () from /usr/lib64/libkio.so.5
#24 0x00000038ac191f16 in QObject::event(QEvent*) () from /usr/lib64/libQtCore.so.4
#25 0x00000038aebc9994 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#26 0x00000038aebce813 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#27 0x00000038b3050766 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
#28 0x00000038ac17904c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#29 0x00000038ac17cada in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQtCore.so.4
#30 0x00000038ac1a7933 in ?? () from /usr/lib64/libQtCore.so.4
#31 0x000000389d444acd in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#32 0x000000389d4452c8 in ?? () from /lib64/libglib-2.0.so.0
#33 0x000000389d44549c in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#34 0x00000038ac1a7d5f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#35 0x00000038aec6c66e in ?? () from /usr/lib64/libQtGui.so.4
#36 0x00000038ac178182 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#37 0x00000038ac1783d7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#38 0x00000038ac17cdd5 in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#39 0x000000000048daeb in main (argc=5, argv=<optimized out>) at /home/goulou/digikam/digikam-sc/core/digikam/main/main.cpp:232

Reported using DrKonqi
Comment 1 Marcel Wiesweg 2012-03-18 17:25:40 UTC
The last two frames look bogus, but the backtrace seems to fit in the picture of the infamous group of crashes in that area

*** This bug has been marked as a duplicate of bug 278049 ***
Comment 2 caulier.gilles 2019-12-23 06:22:13 UTC
Problem is fixed with new 7.0.0-beta1 through this long story from this bug

https://bugs.kde.org/show_bug.cgi?id=399923

You can test digiKam 7.0.0-beta1 with bundle available here:

https://download.kde.org/unstable/digikam/

Don't hesitate to give us a fresh feedback about his entry.

Thanks in advance

Gilles Caulier