Bug 261228

Summary: Segfault while plugging in usb flash drive
Product: digikam Reporter: simon.schaak
Component: Database-MediaAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: andresbajotierra, caulier.gilles
Priority: NOR    
Version: 1.4.0   
Target Milestone: ---   
Platform: Ubuntu Packages   
OS: Linux   
Latest Commit: Version Fixed In: 5.7.0

Description simon.schaak 2010-12-25 14:58:19 UTC
Application: digikam (1.4.0)
KDE Platform Version: 4.5.1 (KDE 4.5.1)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-22-generic x86_64
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:
I plugged a flash drive into the usb port while digikam was running. Instead of doing nothing, digikam crashed. There were no albums (or anything else related to digikam) on the flash drive, just two jpg files.

I could not yet reproduce this.

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

Thread 7 (Thread 0x7fc9b07e9710 (LWP 7502)):
#0  0x00007fc9bc600203 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007fc9b948b009 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007fc9b948b7b5 in g_main_loop_run () from /lib/libglib-2.0.so.0
#3  0x00007fc9b0f200f4 in ?? () from /usr/lib/libgio-2.0.so.0
#4  0x00007fc9b94b07e4 in ?? () from /lib/libglib-2.0.so.0
#5  0x00007fc9bdb39971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#6  0x00007fc9bc60c94d in ?? () from /lib/libc.so.6
#7  0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7fc99e36a710 (LWP 7677)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fc9bddc4e3b in wait (this=<value optimized out>, mutex=0x39a9ac8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x39a9ac8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007fc9c1dde5e4 in Digikam::ParkingThread::run (this=0x39a9ab0) at /build/buildd/digikam-1.4.0/libs/threads/threadmanager.cpp:101
#4  0x00007fc9bddc427e in QThreadPrivate::start (arg=0x39a9ab0) at thread/qthread_unix.cpp:266
#5  0x00007fc9bdb39971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#6  0x00007fc9bc60c94d in ?? () from /lib/libc.so.6
#7  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fc99db69710 (LWP 7678)):
#0  0x00007fc9bdb3cc9d in __pthread_mutex_unlock_usercnt (mutex=0x39d50c8) at pthread_mutex_unlock.c:52
#1  __pthread_mutex_unlock (mutex=0x39d50c8) at pthread_mutex_unlock.c:290
#2  0x00007fc9b948aa05 in g_main_context_prepare () from /lib/libglib-2.0.so.0
#3  0x00007fc9b948ae78 in ?? () from /lib/libglib-2.0.so.0
#4  0x00007fc9b948b45c in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0x00007fc9bdee41e6 in QEventDispatcherGlib::processEvents (this=0x39d2300, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:417
#6  0x00007fc9bdeb6a02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#7  0x00007fc9bdeb6dec in QEventLoop::exec (this=0x7fc99db68d90, flags=) at kernel/qeventloop.cpp:201
#8  0x00007fc9bddc12fd in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#9  0x00007fc9bddc427e in QThreadPrivate::start (arg=0x39b9790) at thread/qthread_unix.cpp:266
#10 0x00007fc9bdb39971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#11 0x00007fc9bc60c94d in ?? () from /lib/libc.so.6
#12 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fc99d368710 (LWP 7679)):
#0  0xffffffffff60017b in ?? ()
#1  0x00007fc99d367a70 in ?? ()
#2  0x00007fffaf7ff852 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0x7fc98dea4710 (LWP 7680)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:212
#1  0x00007fc9962c60d1 in ?? () from /usr/lib/libxine.so.1
#2  0x00007fc9bdb39971 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#3  0x00007fc9bc60c94d in ?? () from /lib/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fc98c88c710 (LWP 7682)):
#0  0xffffffffff60017b in ?? ()
#1  0x00007fc98c88ba10 in ?? ()
#2  0x00007fffaf7ff852 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0x7fc9c4db17c0 (LWP 7501)):
[KCrash Handler]
#6  KDirWatch::contains (this=0x0, _path=...) at ../../kdecore/io/kdirwatch.cpp:1830
#7  0x000000000063d598 in Digikam::AlbumManager::addAlbumRoot (this=0x1b1e100, location=...) at /build/buildd/digikam-1.4.0/digikam/albummanager.cpp:1131
#8  0x0000000000645ca1 in Digikam::AlbumManager::slotCollectionLocationStatusChanged (this=0x1b1e100, location=..., oldStatus=0) at /build/buildd/digikam-1.4.0/digikam/albummanager.cpp:1102
#9  0x0000000000647d75 in Digikam::AlbumManager::qt_metacall (this=0x1b1e100, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffaf789c00) at /build/buildd/digikam-1.4.0/obj-x86_64-linux-gnu/digikam/albummanager.moc:185
#10 0x00007fc9bdecfb27 in QMetaObject::activate (sender=0x1c5f120, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fffaf789c01) at kernel/qobject.cpp:3280
#11 0x00007fc9c184d053 in Digikam::CollectionManager::locationStatusChanged (this=0x0, _t1=<value optimized out>, _t2=0) at /build/buildd/digikam-1.4.0/obj-x86_64-linux-gnu/digikam/collectionmanager.moc:108
#12 0x00007fc9c1853b26 in Digikam::CollectionManager::updateLocations (this=<value optimized out>) at /build/buildd/digikam-1.4.0/libs/database/collectionmanager.cpp:1376
#13 0x00007fc9c185481a in Digikam::CollectionManager::deviceAdded (this=0x1c5f120, udi=<value optimized out>) at /build/buildd/digikam-1.4.0/libs/database/collectionmanager.cpp:1257
#14 0x00007fc9c1854959 in Digikam::CollectionManager::qt_metacall (this=0x1c5f120, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffaf78a090) at /build/buildd/digikam-1.4.0/obj-x86_64-linux-gnu/digikam/collectionmanager.moc:92
#15 0x00007fc9bdecfb27 in QMetaObject::activate (sender=0x1ba15b0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fffaf789c01) at kernel/qobject.cpp:3280
#16 0x00007fc9c370e352 in Solid::DeviceNotifier::deviceAdded (this=0x0, _t1=<value optimized out>) at ./devicenotifier.moc:87
#17 0x00007fc9c3711603 in Solid::DeviceManagerPrivate::_k_deviceAdded (this=0x1ba15b0, udi=...) at ../../../solid/solid/devicemanager.cpp:188
#18 0x00007fc9c371184c in Solid::DeviceManagerPrivate::qt_metacall (this=0x1ba15b0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffaf78a280) at ./devicemanager_p.moc:79
#19 0x00007fc9bdecfb27 in QMetaObject::activate (sender=0x1b26f30, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fffaf789c01) at kernel/qobject.cpp:3280
#20 0x00007fc9c37231b2 in Solid::Ifaces::DeviceManager::deviceAdded (this=0x0, _t1=<value optimized out>) at ./ifaces/devicemanager.moc:87
#21 0x00007fc9c374d21d in Solid::Backends::Hal::HalManager::qt_metacall (this=0x1b26f30, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffaf78a4f0) at ./backends/hal/halmanager.moc:77
#22 0x00007fc9bd8da0ee in QDBusConnectionPrivate::deliverCall (this=<value optimized out>, object=<value optimized out>, msg=<value optimized out>, metaTypes=..., slotIdx=<value optimized out>) at qdbusintegrator.cpp:919
#23 0x00007fc9bd8e50ef in QDBusCallDeliveryEvent::placeMetaCall (this=0x1b94320, object=0x7fffaf789a50) at qdbusintegrator_p.h:103
#24 0x00007fc9bdec9bde in QObject::event (this=0x1b26f30, e=0x0) at kernel/qobject.cpp:1219
#25 0x00007fc9beac8fdc in QApplicationPrivate::notify_helper (this=0x18a42e0, receiver=0x1b26f30, e=0x1d5e070) at kernel/qapplication.cpp:4396
#26 0x00007fc9beaceaed in QApplication::notify (this=0x7fffaf78b0c0, receiver=0x1b26f30, e=0x1d5e070) at kernel/qapplication.cpp:4277
#27 0x00007fc9bf81b156 in KApplication::notify (this=0x7fffaf78b0c0, receiver=0x1b26f30, event=0x1d5e070) at ../../kdeui/kernel/kapplication.cpp:310
#28 0x00007fc9bdeb7cdc in QCoreApplication::notifyInternal (this=0x7fffaf78b0c0, receiver=0x1b26f30, event=0x1d5e070) at kernel/qcoreapplication.cpp:732
#29 0x00007fc9bdebac22 in sendEvent (receiver=0x0, event_type=<value optimized out>, data=0x1865b90) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#30 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=<value optimized out>, data=0x1865b90) at kernel/qcoreapplication.cpp:1373
#31 0x00007fc9bdee4653 in sendPostedEvents (s=0x18a7e40) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#32 postEventSourceDispatch (s=0x18a7e40) at kernel/qeventdispatcher_glib.cpp:277
#33 0x00007fc9b9487342 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#34 0x00007fc9b948b2a8 in ?? () from /lib/libglib-2.0.so.0
#35 0x00007fc9b948b45c in g_main_context_iteration () from /lib/libglib-2.0.so.0
#36 0x00007fc9bdee4193 in QEventDispatcherGlib::processEvents (this=0x1865280, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:415
#37 0x00007fc9beb7ba4e in QGuiEventDispatcherGlib::processEvents (this=0x0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#38 0x00007fc9bdeb6a02 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#39 0x00007fc9bdeb6dec in QEventLoop::exec (this=0x7fffaf78af30, flags=) at kernel/qeventloop.cpp:201
#40 0x00007fc9bdebaebb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#41 0x000000000077cc1d in main (argc=<value optimized out>, argv=<value optimized out>) at /build/buildd/digikam-1.4.0/digikam/main.cpp:195

Possible duplicates by query: bug 258002, bug 255054.

Reported using DrKonqi
Comment 1 Dario Andres 2010-12-25 15:03:28 UTC
[Comment from a bug triager]
This issue is being tracked at bug 255054. Merging. Thanks

*** This bug has been marked as a duplicate of bug 255054 ***
Comment 2 simon.schaak 2010-12-25 15:10:44 UTC
FYI: I wasn't even trying to do anything with digikam at this moment. It was simply running in the background and crashed immediately.
I'm running gnome and haven't selected to open the drive with digikam. So the crash looks quite strange to me.
Comment 3 caulier.gilles 2017-07-19 03:48:53 UTC
Problem not reproducible since digiKam 5.0.0 as KDirWatch has been ported to
QFileSystemWatcher