Bug 367692 - digikam crashed trying to save an edited image
Summary: digikam crashed trying to save an edited image
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Portability-Runtime (show other bugs)
Version: 4.12.0
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2016-08-22 20:10 UTC by f.brenner
Modified: 2017-08-08 14:50 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 5.7.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description f.brenner 2016-08-22 20:10:41 UTC
Application: digikam (4.12.0)
KDE Platform Version: 4.14.16
Qt Version: 4.8.7
Operating System: Linux 4.4.0-34-generic x86_64
Distribution: Ubuntu 16.04.1 LTS

-- Information about the crash:
- opened an image with the integrated image editor
- transformed the image
- tryed to save it
- boom ... crash

The crash can be reproduced every time.

-- Backtrace:
Application: digiKam (digikam), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f21c054cb40 (LWP 6928))]

Thread 16 (Thread 0x7f2152ffd700 (LWP 7002)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x3410880) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x3410630, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x3410620) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x3410620) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f2152ffd700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 15 (Thread 0x7f216b982700 (LWP 7001)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x340d970) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x340d720, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x340d710) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x340d710) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f216b982700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 14 (Thread 0x7f216997e700 (LWP 6958)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x340cf40) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x340ccf0, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x340cce0) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x340cce0) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f216997e700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 13 (Thread 0x7f216a17f700 (LWP 6957)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x340ca50) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x340c800, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x340c7f0) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x340c7f0) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f216a17f700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 12 (Thread 0x7f216a980700 (LWP 6956)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x340c560) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x3404680, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x3404670) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x3404670) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f216a980700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 11 (Thread 0x7f216e7fc700 (LWP 6950)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x340ab50) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x340a900, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x340a8f0) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x340a8f0) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f216e7fc700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 10 (Thread 0x7f216effd700 (LWP 6949)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x340a610) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x340a3c0, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x340a3b0) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x340a3b0) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f216effd700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 9 (Thread 0x7f216f7fe700 (LWP 6948)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x340a0d0) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x3409e80, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x3409e70) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x3409e70) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f216f7fe700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 8 (Thread 0x7f21773e4700 (LWP 6944)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x3408c10) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x3404550, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x3404540) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x3404540) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f21773e4700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 7 (Thread 0x7f2174a5a700 (LWP 6938)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f21ba28e384 in QWaitConditionPrivate::wait (time=30000, this=0x32e7560) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=this@entry=0x33e0490, mutex=mutex@entry=0x19b1798, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21ba280fe7 in QThreadPoolThread::run (this=0x33e0480) at concurrent/qthreadpool.cpp:142
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x33e0480) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f2174a5a700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7f2185b12700 (LWP 6934)):
#0  0x00007ffd3477db6b in clock_gettime ()
#1  0x00007f21b972ffb6 in __GI___clock_gettime (clock_id=clock_id@entry=1, tp=tp@entry=0x7f2185b117a0) at ../sysdeps/unix/clock_gettime.c:115
#2  0x00007f21ba2e8625 in do_gettime (frac=<synthetic pointer>, sec=<synthetic pointer>) at tools/qelapsedtimer_unix.cpp:127
#3  qt_gettime () at tools/qelapsedtimer_unix.cpp:144
#4  0x00007f21ba3cf165 in QTimerInfoList::updateCurrentTime (this=0x7f2180002ee0) at kernel/qeventdispatcher_unix.cpp:354
#5  QTimerInfoList::timerWait (this=0x7f2180002ee0, tm=...) at kernel/qeventdispatcher_unix.cpp:460
#6  0x00007f21ba3cd99c in timerSourcePrepareHelper (src=<optimized out>, timeout=0x7f2185b11874) at kernel/qeventdispatcher_glib.cpp:143
#7  0x00007f21ba3cda65 in timerSourcePrepare (source=<optimized out>, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:176
#8  0x00007f21b312492d in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007f21b31252cb in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007f21b31254ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007f21ba3ce2ce in QEventDispatcherGlib::processEvents (this=0x7f21800008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#12 0x00007f21ba39c18f in QEventLoop::processEvents (this=this@entry=0x7f2185b11a40, flags=...) at kernel/qeventloop.cpp:149
#13 0x00007f21ba39c4f5 in QEventLoop::exec (this=this@entry=0x7f2185b11a40, flags=...) at kernel/qeventloop.cpp:204
#14 0x00007f21ba28b549 in QThread::exec (this=this@entry=0x1bf3a70) at thread/qthread.cpp:538
#15 0x00007f21ba37c223 in QInotifyFileSystemWatcherEngine::run (this=0x1bf3a70) at io/qfilesystemwatcher_inotify.cpp:265
#16 0x00007f21ba28de3c in QThreadPrivate::start (arg=0x1bf3a70) at thread/qthread_unix.cpp:352
#17 0x00007f21b6bd26fa in start_thread (arg=0x7f2185b12700) at pthread_create.c:333
#18 0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7f21950a8700 (LWP 6933)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f21ba28e3a6 in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x13648b0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x18bf010, mutex=mutex@entry=0x18bf008, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f21be644202 in Digikam::ParkingThread::run (this=0x18beff0) at /build/digikam-J9prv3/digikam-4.12.0/core/libs/threads/threadmanager.cpp:119
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x18beff0) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f21950a8700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7f21958a9700 (LWP 6931)):
#0  0x00007f21b97119cd in read () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f21b3168740 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f21b3124e84 in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f21b3125340 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f21b31254ac in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f21ba3ce2ce in QEventDispatcherGlib::processEvents (this=0x7f21880008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#6  0x00007f21ba39c18f in QEventLoop::processEvents (this=this@entry=0x7f21958a8a40, flags=...) at kernel/qeventloop.cpp:149
#7  0x00007f21ba39c4f5 in QEventLoop::exec (this=this@entry=0x7f21958a8a40, flags=...) at kernel/qeventloop.cpp:204
#8  0x00007f21ba28b549 in QThread::exec (this=this@entry=0x139cb00) at thread/qthread.cpp:538
#9  0x00007f21ba37c223 in QInotifyFileSystemWatcherEngine::run (this=0x139cb00) at io/qfilesystemwatcher_inotify.cpp:265
#10 0x00007f21ba28de3c in QThreadPrivate::start (arg=0x139cb00) at thread/qthread_unix.cpp:352
#11 0x00007f21b6bd26fa in start_thread (arg=0x7f21958a9700) at pthread_create.c:333
#12 0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f21960aa700 (LWP 6930)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f21ba28e3a6 in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x12a7010) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x12a6f50, mutex=mutex@entry=0x12a6f48, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00000000005fff44 in Digikam::ScanController::run (this=0x12303d0) at /build/digikam-J9prv3/digikam-4.12.0/core/app/database/scancontroller.cpp:725
#4  0x00007f21ba28de3c in QThreadPrivate::start (arg=0x12303d0) at thread/qthread_unix.cpp:352
#5  0x00007f21b6bd26fa in start_thread (arg=0x7f21960aa700) at pthread_create.c:333
#6  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f219ab62700 (LWP 6929)):
#0  0x00007f21b9715e8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f21a53da64c in ?? () from /lib/x86_64-linux-gnu/libusb-1.0.so.0
#2  0x00007f21b6bd26fa in start_thread (arg=0x7f219ab62700) at pthread_create.c:333
#3  0x00007f21b9721b5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f21c054cb40 (LWP 6928)):
[KCrash Handler]
#6  0x00007f21b9650418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
#7  0x00007f21b965201a in __GI_abort () at abort.c:89
#8  0x00007f21b9c9284d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#9  0x00007f21b9c906b6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#10 0x00007f21b9c90701 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#11 0x00007f21b9c90969 in __cxa_rethrow () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#12 0x00007f21ba39c6ee in QEventLoop::exec (this=this@entry=0x7ffd34731c90, flags=...) at kernel/qeventloop.cpp:218
#13 0x00007f21ba3a24b9 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1227
#14 0x00007f21baffe22c in QApplication::exec () at kernel/qapplication.cpp:3828
#15 0x0000000000492e9e in main (argc=<optimized out>, argv=<optimized out>) at /build/digikam-J9prv3/digikam-4.12.0/core/app/main/main.cpp:230

Possible duplicates by query: bug 367691, bug 364721, bug 364230, bug 364063, bug 362651.

Reported using DrKonqi
Comment 1 caulier.gilles 2016-08-22 20:17:25 UTC
The backtrace do not show exactly where is the problem, but i suspect highly a crash due to Exiv2 shared library.

Please run digiKam in a console with GDB to get a better backtrace. Look here for details :

https://www.digikam.org/contrib

Gilles Caulier
Comment 2 caulier.gilles 2016-11-21 16:03:17 UTC
We need feedback with last digiKam AppImage Linux Bundle:

https://drive.google.com/open?id=0BzeiVr-byqt5Y0tIRWVWelRJenM

Gilles Caulier
Comment 3 caulier.gilles 2016-11-26 10:34:17 UTC
This problem still reproducible using digiKam AppImage bundle 5.4.0 pre release
?

It available at this url :

https://drive.google.com/drive/folders/0BzeiVr-byqt5Y0tIRWVWelRJenM

Gilles Caulier
Comment 4 caulier.gilles 2017-04-16 20:07:39 UTC
digiKam 5.5.0 is released officially

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

...and new 5.6.0 pre-release as bundle is available here :

https://drive.google.com/drive/folders/0BzeiVr-byqt5Y0tIRWVWelRJenM

Please check if this problem still reproducible with these versions.

Thanks in advance

Gilles Caulier
Comment 5 caulier.gilles 2017-06-22 21:39:32 UTC
digiKam 5.6.0 is now release and available as bundle for Linux, MacOS and Windows.

Can you check if problem still exists with this version ?

Thanks in advance

Gilles Caulier
Comment 6 caulier.gilles 2017-06-27 11:28:25 UTC
Not reproducible with 5.7.0 and no more user feedback. Closed.