The following behavior started after upgrade to Digikam 4.3.0. Earlier version did not show this behavior. Variant A 1. Start Digikam 2. Add an XCF file created with GIMP 2.9 to any folder within your Digikam collection 3. Digikam crashes Variant B 1. Place an XCF fiel created with GIMP 2.9 in any folder within your Digikam collection 2. Start Digikam 3. Digikam starts and then crashes immediately Reproducible: Always -- Backtrace: Application: digiKam (digikam), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". gobject.py: gdb was not built with custom backtrace support, disabling. [Current thread is 1 (Thread 0x7f502cf6d900 (LWP 3916))] Thread 10 (Thread 0x7f5007701700 (LWP 3917)): #0 0x00007f50236180af in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f50264aeb66 in wait (time=18446744073709551615, this=0x15662f0) at thread/qwaitcondition_unix.cpp:86 #2 QWaitCondition::wait (this=<optimized out>, mutex=0x1566228, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00000000005fe6ae in ?? () #4 0x00007f50264ae68f in QThreadPrivate::start (arg=0x14dad20) at thread/qthread_unix.cpp:338 #5 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #6 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 9 (Thread 0x7f5006f00700 (LWP 3918)): #0 0x00007f5023617560 in __pthread_mutex_unlock_usercnt () from /lib64/libpthread.so.0 #1 0x00007f501d526a11 in g_mutex_unlock () from /usr/lib64/libglib-2.0.so.0 #2 0x00007f501d4e4690 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0 #3 0x00007f501d4e4f23 in ?? () from /usr/lib64/libglib-2.0.so.0 #4 0x00007f501d4e510c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #5 0x00007f50265dad76 in QEventDispatcherGlib::processEvents (this=0x7f4ff80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:427 #6 0x00007f50265acd0f in QEventLoop::processEvents (this=this@entry=0x7f5006effca0, flags=...) at kernel/qeventloop.cpp:149 #7 0x00007f50265ad005 in QEventLoop::exec (this=this@entry=0x7f5006effca0, flags=...) at kernel/qeventloop.cpp:204 #8 0x00007f50264abfef in QThread::exec (this=this@entry=0x15f15e0) at thread/qthread.cpp:536 #9 0x00007f502658e513 in QInotifyFileSystemWatcherEngine::run (this=0x15f15e0) at io/qfilesystemwatcher_inotify.cpp:256 #10 0x00007f50264ae68f in QThreadPrivate::start (arg=0x15f15e0) at thread/qthread_unix.cpp:338 #11 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #12 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 8 (Thread 0x7f50066ff700 (LWP 3921)): #0 0x00007f50236180af in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f50264aeb66 in wait (time=18446744073709551615, this=0x1855db0) at thread/qwaitcondition_unix.cpp:86 #2 QWaitCondition::wait (this=this@entry=0x178e090, mutex=mutex@entry=0x178e088, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f502a28f87a in Digikam::ParkingThread::run (this=0x178e070) at /usr/src/debug/digikam-4.3.0/core/libs/threads/threadmanager.cpp:119 #4 0x00007f50264ae68f in QThreadPrivate::start (arg=0x178e070) at thread/qthread_unix.cpp:338 #5 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #6 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 7 (Thread 0x7f4ff1e2f700 (LWP 3922)): #0 0x00007f5023618458 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f50264aeb44 in wait (time=30000, this=0x15cf520) at thread/qwaitcondition_unix.cpp:84 #2 QWaitCondition::wait (this=<optimized out>, mutex=mutex@entry=0x18b5468, time=30000) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f50264a2235 in QThreadPoolThread::run (this=0x45f7270) at concurrent/qthreadpool.cpp:141 #4 0x00007f50264ae68f in QThreadPrivate::start (arg=0x45f7270) at thread/qthread_unix.cpp:338 #5 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #6 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 6 (Thread 0x7f4ff13ad700 (LWP 3923)): #0 0x00007f5023618458 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f50264aeb44 in wait (time=30000, this=0x15cf520) at thread/qwaitcondition_unix.cpp:84 #2 QWaitCondition::wait (this=<optimized out>, mutex=mutex@entry=0x18b5468, time=30000) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f50264a2235 in QThreadPoolThread::run (this=0x466f5a0) at concurrent/qthreadpool.cpp:141 #4 0x00007f50264ae68f in QThreadPrivate::start (arg=0x466f5a0) at thread/qthread_unix.cpp:338 #5 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #6 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 5 (Thread 0x7f4ff0bac700 (LWP 3924)): #0 0x00007f5023618458 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f50264aeb44 in wait (time=30000, this=0x15cf520) at thread/qwaitcondition_unix.cpp:84 #2 QWaitCondition::wait (this=<optimized out>, mutex=mutex@entry=0x18b5468, time=30000) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f50264a2235 in QThreadPoolThread::run (this=0x466f9d0) at concurrent/qthreadpool.cpp:141 #4 0x00007f50264ae68f in QThreadPrivate::start (arg=0x466f9d0) at thread/qthread_unix.cpp:338 #5 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #6 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 4 (Thread 0x7f4feb7fe700 (LWP 3926)): #0 0x00007f5023618458 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f50264aeb44 in wait (time=30000, this=0x15cf520) at thread/qwaitcondition_unix.cpp:84 #2 QWaitCondition::wait (this=<optimized out>, mutex=mutex@entry=0x18b5468, time=30000) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f50264a2235 in QThreadPoolThread::run (this=0x466fcd0) at concurrent/qthreadpool.cpp:141 #4 0x00007f50264ae68f in QThreadPrivate::start (arg=0x466fcd0) at thread/qthread_unix.cpp:338 #5 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #6 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 3 (Thread 0x7f4fea7fc700 (LWP 3928)): #0 0x00007f5023618458 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f50264aeb44 in wait (time=30000, this=0x15cf520) at thread/qwaitcondition_unix.cpp:84 #2 QWaitCondition::wait (this=<optimized out>, mutex=mutex@entry=0x18b5468, time=30000) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f50264a2235 in QThreadPoolThread::run (this=0x46743c0) at concurrent/qthreadpool.cpp:141 #4 0x00007f50264ae68f in QThreadPrivate::start (arg=0x46743c0) at thread/qthread_unix.cpp:338 #5 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #6 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 2 (Thread 0x7f4fe2ffd700 (LWP 3934)): [KCrash Handler] #5 Exiv2::PreviewManager::getPreviewImage (this=0x0, properties=...) at preview.cpp:1157 #6 0x00007f502ac83e72 in KExiv2Iface::KExiv2Previews::data(int) () from /usr/lib64/libkexiv2.so.11 #7 0x00007f502ac83fdb in KExiv2Iface::KExiv2Previews::image(int) () from /usr/lib64/libkexiv2.so.11 #8 0x00007f502a27950d in Digikam::ThumbnailCreator::createThumbnail (this=this@entry=0x3902030, info=..., detailRect=...) at /usr/src/debug/digikam-4.3.0/core/libs/threadimageio/thumbnailcreator.cpp:528 #9 0x00007f502a27c1a6 in Digikam::ThumbnailCreator::load (this=0x3902030, path=..., rect=..., pregenerate=pregenerate@entry=false) at /usr/src/debug/digikam-4.3.0/core/libs/threadimageio/thumbnailcreator.cpp:261 #10 0x00007f502a27cff2 in Digikam::ThumbnailCreator::load (this=<optimized out>, path=...) at /usr/src/debug/digikam-4.3.0/core/libs/threadimageio/thumbnailcreator.cpp:200 #11 0x00007f502a28b447 in Digikam::ThumbnailLoadingTask::execute (this=0x4994550) at /usr/src/debug/digikam-4.3.0/core/libs/threadimageio/thumbnailtask.cpp:172 #12 0x00007f502a2636c6 in Digikam::LoadSaveThread::run (this=0x3901fc0) at /usr/src/debug/digikam-4.3.0/core/libs/threadimageio/loadsavethread.cpp:136 #13 0x00007f502a2916be in Digikam::DynamicThread::DynamicThreadPriv::run (this=0x3902370) at /usr/src/debug/digikam-4.3.0/core/libs/threads/dynamicthread.cpp:186 #14 0x00007f50264a213e in QThreadPoolThread::run (this=0x4675da0) at concurrent/qthreadpool.cpp:107 #15 0x00007f50264ae68f in QThreadPrivate::start (arg=0x4675da0) at thread/qthread_unix.cpp:338 #16 0x00007f50236140db in start_thread () from /lib64/libpthread.so.0 #17 0x00007f50256c690d in clone () from /lib64/libc.so.6 Thread 1 (Thread 0x7f502cf6d900 (LWP 3916)): #0 0x00007f50236180af in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f50264aeb66 in wait (time=18446744073709551615, this=0x39023f0) at thread/qwaitcondition_unix.cpp:86 #2 QWaitCondition::wait (this=<optimized out>, mutex=0x39023a0, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158 #3 0x00007f502a290d28 in Digikam::DynamicThread::wait (this=this@entry=0x3901fc0, locker=...) at /usr/src/debug/digikam-4.3.0/core/libs/threads/dynamicthread.cpp:351 #4 0x00007f502a290da4 in Digikam::DynamicThread::shutDown (this=this@entry=0x3901fc0) at /usr/src/debug/digikam-4.3.0/core/libs/threads/dynamicthread.cpp:222 #5 0x00007f502a266cd1 in Digikam::ManagedLoadSaveThread::shutDown (this=this@entry=0x3901fc0) at /usr/src/debug/digikam-4.3.0/core/libs/threadimageio/managedloadsavethread.cpp:94 #6 0x00007f502a27efdf in Digikam::ThumbnailLoadThread::~ThumbnailLoadThread (this=0x3901fc0, __in_chrg=<optimized out>) at /usr/src/debug/digikam-4.3.0/core/libs/threadimageio/thumbnailloadthread.cpp:177 #7 0x00007f502a27f119 in Digikam::ThumbnailLoadThread::~ThumbnailLoadThread (this=0x3901fc0, __in_chrg=<optimized out>) at /usr/src/debug/digikam-4.3.0/core/libs/threadimageio/thumbnailloadthread.cpp:180 #8 0x00007f50256173d9 in __run_exit_handlers () from /lib64/libc.so.6 #9 0x00007f5025617425 in exit () from /lib64/libc.so.6 #10 0x00007f5027023298 in ?? () from /usr/lib64/libQtGui.so.4 #11 0x00007f5027cd21a0 in KApplication::xioErrhandler(_XDisplay*) () from /usr/lib64/libkdeui.so.5 #12 0x00007f5023bb53fe in _XIOError () from /usr/lib64/libX11.so.6 #13 0x00007f5023bb2ded in _XEventsQueued () from /usr/lib64/libX11.so.6 #14 0x00007f5023ba4ddb in XEventsQueued () from /usr/lib64/libX11.so.6 #15 0x00007f50270593ac in ?? () from /usr/lib64/libQtGui.so.4 #16 0x00007f501d4e4a71 in g_main_context_check () from /usr/lib64/libglib-2.0.so.0 #17 0x00007f501d4e4f9b in ?? () from /usr/lib64/libglib-2.0.so.0 #18 0x00007f501d4e510c in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0 #19 0x00007f50265dad55 in QEventDispatcherGlib::processEvents (this=0x1325d20, flags=...) at kernel/qeventdispatcher_glib.cpp:425 #20 0x00007f5027059936 in ?? () from /usr/lib64/libQtGui.so.4 #21 0x00007f50265acd0f in QEventLoop::processEvents (this=this@entry=0x7fffae56b020, flags=...) at kernel/qeventloop.cpp:149 #22 0x00007f50265ad005 in QEventLoop::exec (this=this@entry=0x7fffae56b020, flags=...) at kernel/qeventloop.cpp:204 #23 0x00007f50265b213b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1221 #24 0x000000000049f870 in ?? () #25 0x00007f5025600be5 in __libc_start_main () from /lib64/libc.so.6 #26 0x00000000004a1ec1 in _start () Possible duplicates by query: bug 339088.
*** This bug has been marked as a duplicate of bug 339144 ***
Git commit d9a57550ee4d08f1ab612723b315348af9bab9da by Gilles Caulier. Committed on 09/05/2020 at 12:31. Pushed by cgilles into branch 'master'. Switch all digiKam bundles to last 5.70 which now support new Gimp XCF file format. See KF5 release announcement : https://kde.org/announcements/kde-frameworks-5.70.0.php "KImageFormats: Add support for modern Gimp images/XCF files" This will permit to digiKam and Showfoto to show XCF thumbnail and load preview/full image (read only) Related: bug 309465, bug 186641, bug 224697, bug 250003, bug 368444, bug 412339 M +3 -3 project/bundles/3rdparty/ext_kf5_frameworks/CMakeLists.txt https://invent.kde.org/kde/digikam/commit/d9a57550ee4d08f1ab612723b315348af9bab9da
Not reproducible with digiKam 7.3.0 and Exiv2 0.27.4