Bug 288627 - Digikam crashes while trying to load images from a USB drive
Summary: Digikam crashes while trying to load images from a USB drive
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Import-IconView (show other bugs)
Version: 2.1.1
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-12-10 06:13 UTC by Tianyu Zhu
Modified: 2023-04-05 05:51 UTC (History)
2 users (show)

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


Attachments
New crash information added by DrKonqi (11.59 KB, text/plain)
2012-08-27 04:51 UTC, brindamo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tianyu Zhu 2011-12-10 06:13:51 UTC
Application: digikam (2.1.1)
KDE Platform Version: 4.7.3 (4.7.3)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-14-generic i686
Distribution: Ubuntu 11.10

-- Information about the crash:
- What I was doing when the application crashed:
I tried downloading some images from a USB drive using digikam, but it crashes right before loading any of the pictures.

- Some additional details:
The USB drive uses an internal SD card.

The crash can be reproduced every time.

-- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
[Current thread is 1 (Thread 0xb54e48c0 (LWP 2408))]

Thread 7 (Thread 0xb480fb70 (LWP 2410)):
#0  0x005ba416 in __kernel_vsyscall ()
#1  0x007f6a5c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x00d61cfc in __pthread_cond_wait (cond=0x94a9d00, mutex=0x94a9ce8) at forward.c:139
#3  0x02c33cc0 in wait (time=4294967295, this=0x94a9ce8) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0x94a9c14, mutex=0x94a9c10, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x081faf45 in Digikam::ScanController::run (this=0x9487370) at /build/buildd/digikam-2.1.1/core/digikam/database/scancontroller.cpp:647
#6  0x02c337b3 in QThreadPrivate::start (arg=0x9487370) at thread/qthread_unix.cpp:331
#7  0x007f2d31 in start_thread (arg=0xb480fb70) at pthread_create.c:304
#8  0x00d540ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 6 (Thread 0xb400eb70 (LWP 2411)):
#0  0x005ba416 in __kernel_vsyscall ()
#1  0x00d4540e in __GI___poll (fds=0x94c1958, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#2  0x04e0634b in g_poll () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x04df7896 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x04df7c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x02d5cb37 in QEventDispatcherGlib::processEvents (this=0x94c0000, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#6  0x02d2d1dd in QEventLoop::processEvents (this=0xb400e100, flags=...) at kernel/qeventloop.cpp:149
#7  0x02d2d421 in QEventLoop::exec (this=0xb400e100, flags=...) at kernel/qeventloop.cpp:201
#8  0x02c3090b in QThread::exec (this=0x94e6620) at thread/qthread.cpp:498
#9  0x02d0de2d in QInotifyFileSystemWatcherEngine::run (this=0x94e6620) at io/qfilesystemwatcher_inotify.cpp:248
#10 0x02c337b3 in QThreadPrivate::start (arg=0x94e6620) at thread/qthread_unix.cpp:331
#11 0x007f2d31 in start_thread (arg=0xb400eb70) at pthread_create.c:304
#12 0x00d540ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 5 (Thread 0xb36ffb70 (LWP 2413)):
#0  0x005ba416 in __kernel_vsyscall ()
#1  0x007f6a5c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x00d61cfc in __pthread_cond_wait (cond=0x9986ec8, mutex=0x9986eb0) at forward.c:139
#3  0x02c33cc0 in wait (time=4294967295, this=0x9986eb0) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0x9986b80, mutex=0x9986b7c, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x06396f54 in Digikam::ParkingThread::run (this=0x9986b70) at /build/buildd/digikam-2.1.1/core/libs/threads/threadmanager.cpp:119
#6  0x02c337b3 in QThreadPrivate::start (arg=0x9986b70) at thread/qthread_unix.cpp:331
#7  0x007f2d31 in start_thread (arg=0xb36ffb70) at pthread_create.c:304
#8  0x00d540ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 4 (Thread 0xb1b0eb70 (LWP 2414)):
#0  0x00bbfd10 in __GI_clock_gettime (clock_id=1, tp=0xb1b0de78) at ../sysdeps/unix/clock_gettime.c:116
#1  0x02c8a7d5 in do_gettime (frac=0xb1b0de70, sec=0xb1b0de68) at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x02d5d4b6 in QTimerInfoList::updateCurrentTime (this=0x9aca4e4) at kernel/qeventdispatcher_unix.cpp:339
#4  0x02d5d80a in QTimerInfoList::timerWait (this=0x9aca4e4, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x02d5c053 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xb1b0df7c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x02d5c0ed in timerSourcePrepare (source=0x9aca4b0, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x04df688c in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0x04df7637 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0x04df7c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0x02d5cb37 in QEventDispatcherGlib::processEvents (this=0x9aca810, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#11 0x02d2d1dd in QEventLoop::processEvents (this=0xb1b0e100, flags=...) at kernel/qeventloop.cpp:149
#12 0x02d2d421 in QEventLoop::exec (this=0xb1b0e100, flags=...) at kernel/qeventloop.cpp:201
#13 0x02c3090b in QThread::exec (this=0x9a8b918) at thread/qthread.cpp:498
#14 0x02d0de2d in QInotifyFileSystemWatcherEngine::run (this=0x9a8b918) at io/qfilesystemwatcher_inotify.cpp:248
#15 0x02c337b3 in QThreadPrivate::start (arg=0x9a8b918) at thread/qthread_unix.cpp:331
#16 0x007f2d31 in start_thread (arg=0xb1b0eb70) at pthread_create.c:304
#17 0x00d540ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 3 (Thread 0xac715b70 (LWP 2428)):
#0  0x005ba416 in __kernel_vsyscall ()
#1  0x007f6a5c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x00d61cfc in __pthread_cond_wait (cond=0xb6bc1b0, mutex=0xb6bc198) at forward.c:139
#3  0x02c33cc0 in wait (time=4294967295, this=0xb6bc198) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xb6877cc, mutex=0xb6877c8, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x083c16b5 in Digikam::CameraController::run (this=0xb6bba00) at /build/buildd/digikam-2.1.1/core/utilities/cameragui/controller/cameracontroller.cpp:385
#6  0x02c337b3 in QThreadPrivate::start (arg=0xb6bba00) at thread/qthread_unix.cpp:331
#7  0x007f2d31 in start_thread (arg=0xac715b70) at pthread_create.c:304
#8  0x00d540ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 2 (Thread 0xaa1ffb70 (LWP 2431)):
#0  0x005ba416 in __kernel_vsyscall ()
#1  0x007f6a5c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:169
#2  0x00d61cfc in __pthread_cond_wait (cond=0xb3740ba8, mutex=0xb3740b90) at forward.c:139
#3  0x02c33cc0 in wait (time=4294967295, this=0xb3740b90) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xb3784280, mutex=0xb378427c, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x083c86d4 in Digikam::CameraHistoryUpdater::run (this=0xb3785a08) at /build/buildd/digikam-2.1.1/core/utilities/cameragui/controller/camerahistoryupdater.cpp:118
#6  0x02c337b3 in QThreadPrivate::start (arg=0xb3785a08) at thread/qthread_unix.cpp:331
#7  0x007f2d31 in start_thread (arg=0xaa1ffb70) at pthread_create.c:304
#8  0x00d540ce in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 1 (Thread 0xb54e48c0 (LWP 2408)):
[KCrash Handler]
#7  __memcpy_ssse3_rep () at ../sysdeps/i386/i686/multiarch/memcpy-ssse3-rep.S:158
#8  0x083d86f0 in size (this=0xb7ac358) at /usr/include/i386-linux-gnu/bits/string3.h:52
#9  appendTo (out=<synthetic pointer>, a=...) at /usr/include/qt4/QtCore/qstringbuilder.h:213
#10 appendTo (out=<synthetic pointer>, p=<optimized out>) at /usr/include/qt4/QtCore/qstringbuilder.h:293
#11 operator QString (this=<optimized out>) at /usr/include/qt4/QtCore/qstringbuilder.h:108
#12 Digikam::CameraIconView::findItem (this=0xb1bd0b8, folder=..., filename=...) at /build/buildd/digikam-2.1.1/core/utilities/cameragui/views/cameraiconview.cpp:292
#13 0x083d8be2 in Digikam::CameraIconView::slotThumbInfoReady (this=0xb1bd0b8, info=...) at /build/buildd/digikam-2.1.1/core/utilities/cameragui/views/cameraiconview.cpp:229
#14 0x083da9bc in Digikam::CameraIconView::qt_metacall (this=0xb1bd0b8, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfc1b458) at /build/buildd/digikam-2.1.1/obj-i686-linux-gnu/core/utilities/cameragui/cameraiconview.moc:145
#15 0x02d34b7d in metacall (argv=0xbfc1b458, idx=89, cl=QMetaObject::InvokeMetaMethod, object=0xb1bd0b8) at kernel/qmetaobject.cpp:237
#16 QMetaObject::metacall (object=0xb1bd0b8, cl=QMetaObject::InvokeMetaMethod, idx=89, argv=0xbfc1b458) at kernel/qmetaobject.cpp:232
#17 0x02d43a6a in QMetaObject::activate (sender=0xb370d680, m=0x8453114, local_signal_index=0, argv=0xbfc1b458) at kernel/qobject.cpp:3278
#18 0x083c5327 in Digikam::CameraThumbsCtrl::signalThumbInfoReady (this=0xb370d680, _t1=...) at /build/buildd/digikam-2.1.1/obj-i686-linux-gnu/core/utilities/cameragui/camerathumbsctrl.moc:99
#19 0x083c638b in Digikam::CameraThumbsCtrl::procressKDEPreview (this=0xb370d680, item=..., pix=...) at /build/buildd/digikam-2.1.1/core/utilities/cameragui/controller/camerathumbsctrl.cpp:180
#20 0x083c67c8 in Digikam::CameraThumbsCtrl::slotFailedKDEPreview (this=0xb370d680, item=...) at /build/buildd/digikam-2.1.1/core/utilities/cameragui/controller/camerathumbsctrl.cpp:156
#21 0x083c6bb3 in Digikam::CameraThumbsCtrl::qt_metacall (this=0xb370d680, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfc1b698) at /build/buildd/digikam-2.1.1/obj-i686-linux-gnu/core/utilities/cameragui/camerathumbsctrl.moc:87
#22 0x02d34b7d in metacall (argv=0xbfc1b698, idx=8, cl=QMetaObject::InvokeMetaMethod, object=0xb370d680) at kernel/qmetaobject.cpp:237
#23 QMetaObject::metacall (object=0xb370d680, cl=QMetaObject::InvokeMetaMethod, idx=8, argv=0xbfc1b698) at kernel/qmetaobject.cpp:232
#24 0x02d43a6a in QMetaObject::activate (sender=0xabb98a8, m=0x4000efc, local_signal_index=1, argv=0xbfc1b698) at kernel/qobject.cpp:3278
#25 0x03eba655 in KIO::PreviewJob::failed (this=0xabb98a8, _t1=...) at ./previewjob.moc:106
#26 0x03ebcf52 in KIO::PreviewJobPrivate::startPreview (this=0xb7c4960) at ../../kio/kio/previewjob.cpp:344
#27 0x03ebda7f in KIO::PreviewJob::qt_metacall (this=0xabb98a8, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xa795318) at ./previewjob.moc:86
#28 0x02d34b7d in metacall (argv=0xa795318, idx=34, cl=QMetaObject::InvokeMetaMethod, object=0xabb98a8) at kernel/qmetaobject.cpp:237
#29 QMetaObject::metacall (object=0xabb98a8, cl=QMetaObject::InvokeMetaMethod, idx=34, argv=0xa795318) at kernel/qmetaobject.cpp:232
#30 0x02d3f685 in QMetaCallEvent::placeMetaCall (this=0xb7acfe8, object=0xabb98a8) at kernel/qobject.cpp:535
#31 0x02d46b52 in QObject::event (this=0xabb98a8, e=0xb7acfe8) at kernel/qobject.cpp:1217
#32 0x01f4dd54 in notify_helper (e=0xb7acfe8, receiver=0xabb98a8, this=0x936df78) at kernel/qapplication.cpp:4486
#33 QApplicationPrivate::notify_helper (this=0x936df78, receiver=0xabb98a8, e=0xb7acfe8) at kernel/qapplication.cpp:4458
#34 0x01f53103 in QApplication::notify (this=0xb7acfe8, receiver=0xabb98a8, e=0xb7acfe8) at kernel/qapplication.cpp:3886
#35 0x01ba4681 in KApplication::notify (this=0xbfc1bfe0, receiver=0xabb98a8, event=0xb7acfe8) at ../../kdeui/kernel/kapplication.cpp:311
#36 0x02d2e19e in QCoreApplication::notifyInternal (this=0xbfc1bfe0, receiver=0xabb98a8, event=0xb7acfe8) at kernel/qcoreapplication.cpp:787
#37 0x02d31f93 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#38 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x932cba0) at kernel/qcoreapplication.cpp:1428
#39 0x02d320ec in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1321
#40 0x02d5c6a4 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#41 postEventSourceDispatch (s=0x9373528) at kernel/qeventdispatcher_glib.cpp:277
#42 0x04df725f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#43 0x04df7990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#44 0x04df7c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#45 0x02d5cada in QEventDispatcherGlib::processEvents (this=0x932d898, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#46 0x02005e3a in QGuiEventDispatcherGlib::processEvents (this=0x932d898, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#47 0x02d2d1dd in QEventLoop::processEvents (this=0xbfc1bec4, flags=...) at kernel/qeventloop.cpp:149
#48 0x02d2d421 in QEventLoop::exec (this=0xbfc1bec4, flags=...) at kernel/qeventloop.cpp:201
#49 0x02d3219d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#50 0x01f4b8f4 in QApplication::exec () at kernel/qapplication.cpp:3760
#51 0x080b4b64 in main (argc=) at /build/buildd/digikam-2.1.1/core/digikam/main/main.cpp:232

Reported using DrKonqi
Comment 1 caulier.gilles 2011-12-10 09:13:01 UTC
Fixed in 2.3.0

*** This bug has been marked as a duplicate of bug 282194 ***
Comment 2 brindamo 2012-08-27 04:51:14 UTC
Created attachment 73493 [details]
New crash information added by DrKonqi

digikam (2.1.1) on KDE Platform 4.7.4 (4.7.4) using Qt 4.7.4

- What I was doing when the application crashed:

I rebooted machine and opened no applications.
I inserted the Micro SD adapter containing a Micro SD card removed from an Android phone.
Device Notifier offered 3 options to open the card
I clicked on the notifier to close it
I opened Digikam from the KDE Start menu then selected Import from Card Reader
System displayed thumbnails and file names of the files on the card but then crashed

Note:
Connecting the phone via USB allows me to download from the phone's internal storage but as soon as I try to import from the Micro SD card Digikam crashes.

-- Backtrace (Reduced):
#6  appendTo (out=<synthetic pointer>, a=...) at /usr/include/qt4/QtCore/qstringbuilder.h:214
#7  appendTo (out=<synthetic pointer>, p=<optimized out>) at /usr/include/qt4/QtCore/qstringbuilder.h:293
#8  operator QString (this=<optimized out>) at /usr/include/qt4/QtCore/qstringbuilder.h:108
#9  Digikam::CameraIconView::findItem (this=0x25b9740, folder=<optimized out>, filename=...) at /build/buildd/digikam-2.1.1/core/utilities/cameragui/views/cameraiconview.cpp:292
#10 0x000000000078c551 in Digikam::CameraIconView::slotThumbInfoReady (this=0x25b9740, info=<optimized out>) at /build/buildd/digikam-2.1.1/core/utilities/cameragui/views/cameraiconview.cpp:229
Comment 3 caulier.gilles 2023-04-05 05:51:17 UTC
Fixed with #282194