Bug 357149 - digikam crashes while writing Exif metadata
Summary: digikam crashes while writing Exif metadata
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Metadata-Exif (show other bugs)
Version: 4.12.0
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-12-25 13:57 UTC by raving
Modified: 2020-07-26 12:43 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 7.1.0


Attachments
New crash information added by DrKonqi (22.05 KB, text/plain)
2016-03-25 16:59 UTC, Thomas Käfer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description raving 2015-12-25 13:57:05 UTC
Application: digikam (4.12.0)
KDE Platform Version: 4.14.13
Qt Version: 4.8.6
Operating System: Linux 4.2.0-22-generic x86_64
Distribution: Ubuntu 15.10

-- Information about the crash:
- What I was doing when the application crashed:
1) I changed the Exif  Timestamp of an image
2) Digikam crashed
3) I  tried it again (and again) with the same result.

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

Thread 8 (Thread 0x7fec517c9700 (LWP 5264)):
#0  0x00007fec6f7ae8dd in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fec5b96b12c in ?? () from /lib/x86_64-linux-gnu/libusb-1.0.so.0
#2  0x00007fec6ccc56aa in start_thread (arg=0x7fec517c9700) at pthread_create.c:333
#3  0x00007fec6f7b9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 7 (Thread 0x7fec4b907700 (LWP 5265)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fec70314286 in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x18a4950) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x18a4890, mutex=mutex@entry=0x18a4888, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00000000005fffb4 in Digikam::ScanController::run (this=0x18412b0) at /build/digikam-131Z2v/digikam-4.12.0/core/app/database/scancontroller.cpp:725
#4  0x00007fec70313d1c in QThreadPrivate::start (arg=0x18412b0) at thread/qthread_unix.cpp:349
#5  0x00007fec6ccc56aa in start_thread (arg=0x7fec4b907700) at pthread_create.c:333
#6  0x00007fec6f7b9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7fec4b106700 (LWP 5266)):
#0  0x00007fec6f7ae8dd in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fec692601ec in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fec692602fc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fec7045420e in QEventDispatcherGlib::processEvents (this=0x7fec3c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#4  0x00007fec704220d1 in QEventLoop::processEvents (this=this@entry=0x7fec4b105a40, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fec70422445 in QEventLoop::exec (this=this@entry=0x7fec4b105a40, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007fec703114f9 in QThread::exec (this=this@entry=0x18c7020) at thread/qthread.cpp:538
#7  0x00007fec70402133 in QInotifyFileSystemWatcherEngine::run (this=0x18c7020) at io/qfilesystemwatcher_inotify.cpp:265
#8  0x00007fec70313d1c in QThreadPrivate::start (arg=0x18c7020) at thread/qthread_unix.cpp:349
#9  0x00007fec6ccc56aa in start_thread (arg=0x7fec4b106700) at pthread_create.c:333
#10 0x00007fec6f7b9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7fec4a905700 (LWP 5269)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fec70314286 in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x18ec5b0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x1aa84e0, mutex=mutex@entry=0x1aa84d8, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007fec74691f02 in Digikam::ParkingThread::run (this=0x1aa84c0) at /build/digikam-131Z2v/digikam-4.12.0/core/libs/threads/threadmanager.cpp:119
#4  0x00007fec70313d1c in QThreadPrivate::start (arg=0x1aa84c0) at thread/qthread_unix.cpp:349
#5  0x00007fec6ccc56aa in start_thread (arg=0x7fec4a905700) at pthread_create.c:333
#6  0x00007fec6f7b9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7febcdb66700 (LWP 5317)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fec70314286 in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x46de720) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x471a530, mutex=mutex@entry=0x471a528, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007febdc7117f8 in KIPIPlugins::KPRawThumbThread::run (this=0x46ddd90) at /build/digikam-131Z2v/digikam-4.12.0/extra/kipi-plugins/common/libkipiplugins/tools/kprawthumbthread.cpp:108
#4  0x00007fec70313d1c in QThreadPrivate::start (arg=0x46ddd90) at thread/qthread_unix.cpp:349
#5  0x00007fec6ccc56aa in start_thread (arg=0x7febcdb66700) at pthread_create.c:333
#6  0x00007fec6f7b9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7febccfb5700 (LWP 5320)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fec70314286 in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x4762530) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x47604c0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007fec75b04a54 in KDcrawIface::RActionThreadBase::run() () from /usr/lib/libkdcraw.so.23
#4  0x00007fec70313d1c in QThreadPrivate::start (arg=0x47622d0) at thread/qthread_unix.cpp:349
#5  0x00007fec6ccc56aa in start_thread (arg=0x7febccfb5700) at pthread_create.c:333
#6  0x00007fec6f7b9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7febc7fff700 (LWP 5321)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007fec70314286 in QWaitConditionPrivate::wait (time=18446744073709551615, this=0x4a9bef0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x4a9bdf8, mutex=0x4a9c820, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007fec732b3cfc in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x4a9bdd0, th=0x7febb4004750) at ../../../threadweaver/Weaver/WeaverImpl.cpp:370
#4  0x00007fec732b6a03 in ThreadWeaver::WorkingHardState::applyForWork (this=0x4a9c2a0, th=0x7febb4004750, previous=0x4766720) at ../../../threadweaver/Weaver/WorkingHardState.cpp:68
#5  0x00007fec732b555f in ThreadWeaver::Thread::run (this=0x7febb4004750) at ../../../threadweaver/Weaver/Thread.cpp:98
#6  0x00007fec70313d1c in QThreadPrivate::start (arg=0x7febb4004750) at thread/qthread_unix.cpp:349
#7  0x00007fec6ccc56aa in start_thread (arg=0x7febc7fff700) at pthread_create.c:333
#8  0x00007fec6f7b9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7fec76560b40 (LWP 5263)):
[KCrash Handler]
#6  QPixmapData::isNull (this=<optimized out>) at image/qpixmapdata_p.h:131
#7  QPixmap::isNull (this=this@entry=0x46e74e8) at image/qpixmap.cpp:579
#8  0x00007fec7115596b in QPixmap::copy (this=this@entry=0x46e74e8, rect=...) at image/qpixmap.cpp:382
#9  0x00007fec711566bf in QPixmap::QPixmap (this=0x7fffec332810, pixmap=...) at image/qpixmap.cpp:303
#10 0x00007fec71e5bf38 in KPixmapSequence::frameAt (this=0x46b1b78, index=1) at ../../kdeui/util/kpixmapsequence.cpp:143
#11 0x00007febdc723261 in KIPIPlugins::KPImagesList::slotProgressTimerDone (this=0x42988c0) at /build/digikam-131Z2v/digikam-4.12.0/extra/kipi-plugins/common/libkipiplugins/widgets/kpimageslist.cpp:1146
#12 0x00007fec70437f60 in QMetaObject::activate (sender=0x4719fd0, m=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3567
#13 0x00007fec7043dbd3 in QObject::event (this=0x4719fd0, e=<optimized out>) at kernel/qobject.cpp:1253
#14 0x00007fec71078cdc in QApplicationPrivate::notify_helper (this=this@entry=0x1752910, receiver=receiver@entry=0x4719fd0, e=e@entry=0x7fffec332c80) at kernel/qapplication.cpp:4570
#15 0x00007fec7107fc16 in QApplication::notify (this=this@entry=0x7fffec3333a0, receiver=receiver@entry=0x4719fd0, e=e@entry=0x7fffec332c80) at kernel/qapplication.cpp:4356
#16 0x00007fec71ddba2a in KApplication::notify (this=0x7fffec3333a0, receiver=0x4719fd0, event=0x7fffec332c80) at ../../kdeui/kernel/kapplication.cpp:311
#17 0x00007fec7042385d in QCoreApplication::notifyInternal (this=0x7fffec3333a0, receiver=0x4719fd0, event=event@entry=0x7fffec332c80) at kernel/qcoreapplication.cpp:955
#18 0x00007fec704566c0 in QCoreApplication::sendEvent (event=0x7fffec332c80, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#19 QTimerInfoList::activateTimers (this=0x1750620) at kernel/qeventdispatcher_unix.cpp:621
#20 0x00007fec70453869 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:193
#21 idleTimerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:240
#22 0x00007fec6925fff7 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007fec69260250 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007fec692602fc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#25 0x00007fec704541ee in QEventDispatcherGlib::processEvents (this=0x16b3450, flags=...) at kernel/qeventdispatcher_glib.cpp:450
#26 0x00007fec71123c26 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#27 0x00007fec704220d1 in QEventLoop::processEvents (this=this@entry=0x7fffec332f00, flags=...) at kernel/qeventloop.cpp:149
#28 0x00007fec70422445 in QEventLoop::exec (this=this@entry=0x7fffec332f00, flags=...) at kernel/qeventloop.cpp:204
#29 0x00007fec70428429 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1227
#30 0x00007fec71076f2c in QApplication::exec () at kernel/qapplication.cpp:3828
#31 0x0000000000492eae in main (argc=<optimized out>, argv=<optimized out>) at /build/digikam-131Z2v/digikam-4.12.0/core/app/main/main.cpp:230

Possible duplicates by query: bug 355154, bug 354364.

Reported using DrKonqi
Comment 1 caulier.gilles 2015-12-25 15:39:42 UTC

*** This bug has been marked as a duplicate of bug 354364 ***
Comment 2 Thomas Käfer 2016-03-25 16:59:59 UTC
Created attachment 98074 [details]
New crash information added by DrKonqi

digikam (4.12.0) on KDE Platform 4.14.16 using Qt 4.8.7

- What I was doing when the application crashed:

adapting timestamps of multiple images. same selection makes digikam crash every time. different selections sometimes work.

-- Backtrace (Reduced):
#6  0x00007fa14d6ad9a9 in QPixmap::isNull() const () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#7  0x00007fa14d6ae7db in QPixmap::copy(QRect const&) const () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#8  0x00007fa14d6af52f in QPixmap::QPixmap(QPixmap const&) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#9  0x00007fa14e3b6ab8 in KPixmapSequence::frameAt(int) const () from //usr/lib/libkdeui.so.5
#10 0x00007fa10012a221 in KIPIPlugins::KPImagesList::slotProgressTimerDone() () from /usr/lib/digikam/libkipiplugins.so.4.12.0
Comment 3 caulier.gilles 2020-07-26 12:43:42 UTC
Fixed with #354364