Bug 288266 - Digikam crashed attempting to fix a shortcut conflict
Summary: Digikam crashed attempting to fix a shortcut conflict
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Usability-Keyboard (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-05 13:30 UTC by Joe
Modified: 2017-08-02 17:41 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joe 2011-12-05 13:30:24 UTC
Application: digikam (2.1.1)
KDE Platform Version: 4.7.2 (4.7.2)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-13-generic i686
Distribution: Ubuntu 11.10

-- Information about the crash:
- What I was doing when the application crashed: After a night of scanning entire collection for faces I attempted to create a shortcut to assign a specific face. The shortcut was already used, and when I opened the settings menu to change it the program crashed.

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

Thread 5 (Thread 0xb49dab70 (LWP 1977)):
#0  0x0567b906 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#1  0x0567bf9b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#2  0x03f8ccea in ?? () from /usr/lib/i386-linux-gnu/libgio-2.0.so.0
#3  0x056a25f4 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x026bad31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#5  0x0150f0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 4 (Thread 0xb3725b70 (LWP 1978)):
#0  0x00d79416 in __kernel_vsyscall ()
#1  0x026bea5c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0x0151ccfc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0x01d3ecc0 in wait (time=4294967295, this=0x98d41a8) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0x98d40d4, mutex=0x98d40d0, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x081faf45 in Digikam::ScanController::run (this=0x98c9138) at /build/buildd/digikam-2.1.1/core/digikam/database/scancontroller.cpp:647
#6  0x01d3e7b3 in QThreadPrivate::start (arg=0x98c9138) at thread/qthread_unix.cpp:331
#7  0x026bad31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x0150f0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 3 (Thread 0xb2f24b70 (LWP 1979)):
#0  0x01e684bd in QTimerInfoList::updateCurrentTime (this=0x98d919c) at kernel/qeventdispatcher_unix.cpp:339
#1  0x01e6880a in QTimerInfoList::timerWait (this=0x98d919c, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#2  0x01e67053 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xb2f23f7c) at kernel/qeventdispatcher_glib.cpp:136
#3  0x01e670ed in timerSourcePrepare (source=0x98d9168, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#4  0x0567a88c in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x0567b637 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0x0567bc2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#7  0x01e67b37 in QEventDispatcherGlib::processEvents (this=0x98d87d8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#8  0x01e381dd in QEventLoop::processEvents (this=0xb2f24100, flags=...) at kernel/qeventloop.cpp:149
#9  0x01e38421 in QEventLoop::exec (this=0xb2f24100, flags=...) at kernel/qeventloop.cpp:201
#10 0x01d3b90b in QThread::exec (this=0x98d61a8) at thread/qthread.cpp:498
#11 0x01e18e2d in QInotifyFileSystemWatcherEngine::run (this=0x98d61a8) at io/qfilesystemwatcher_inotify.cpp:248
#12 0x01d3e7b3 in QThreadPrivate::start (arg=0x98d61a8) at thread/qthread_unix.cpp:331
#13 0x026bad31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#14 0x0150f0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 2 (Thread 0xb51dbb70 (LWP 1982)):
#0  0x00d79416 in __kernel_vsyscall ()
#1  0x026bea5c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0x0151ccfc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0x01d3ecc0 in wait (time=4294967295, this=0x9aea5a8) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0x9aea278, mutex=0x9aea274, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x01220f54 in Digikam::ParkingThread::run (this=0x9aea268) at /build/buildd/digikam-2.1.1/core/libs/threads/threadmanager.cpp:119
#6  0x01d3e7b3 in QThreadPrivate::start (arg=0x9aea268) at thread/qthread_unix.cpp:331
#7  0x026bad31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x0150f0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 1 (Thread 0xb54688c0 (LWP 1974)):
[KCrash Handler]
#7  QAction::shortcuts (this=0xadc74b0) at kernel/qaction.cpp:510
#8  0x016b7b40 in KAction::shortcut (this=0xadc74b0, type=...) at ../../kdeui/actions/kaction.cpp:193
#9  0x0172b3a0 in KShortcutsEditorItem::updateModified (this=0xa5773d8) at ../../kdeui/dialogs/kshortcutseditoritem.cpp:260
#10 0x0172b709 in KShortcutsEditorItem::setKeySequence (this=0xa5773d8, column=1, seq=...) at ../../kdeui/dialogs/kshortcutseditoritem.cpp:233
#11 0x0172d670 in changeKeyShortcut (capture=..., column=1, item=0xa5773d8, this=0xaf7a878) at ../../kdeui/dialogs/kshortcutseditor.cpp:438
#12 KShortcutsEditorPrivate::changeKeyShortcut (this=0xaf7a878, item=0xa5773d8, column=1, capture=...) at ../../kdeui/dialogs/kshortcutseditor.cpp:431
#13 0x0172e4a7 in KShortcutsEditorPrivate::capturedShortcut (this=0xaf7a878, newShortcut=..., index=...) at ../../kdeui/dialogs/kshortcutseditor.cpp:423
#14 0x0172fedd in KShortcutsEditor::qt_metacall (this=0xa9e32e8, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfc0aa74) at ./kshortcutseditor.moc:85
#15 0x01e3fb7d in metacall (argv=0xbfc0aa74, idx=31, cl=QMetaObject::InvokeMetaMethod, object=0xa9e32e8) at kernel/qmetaobject.cpp:237
#16 QMetaObject::metacall (object=0xa9e32e8, cl=QMetaObject::InvokeMetaMethod, idx=31, argv=0xbfc0aa74) at kernel/qmetaobject.cpp:232
#17 0x01e4ea6a in QMetaObject::activate (sender=0xaf9de38, m=0x19f826c, local_signal_index=0, argv=0xbfc0aa74) at kernel/qobject.cpp:3278
#18 0x01733aad in KShortcutsEditorDelegate::shortcutChanged (this=0xaf9de38, _t1=..., _t2=...) at ./kshortcutsdialog_p.moc:108
#19 0x01728b79 in KShortcutsEditorDelegate::keySequenceChanged (this=0xaf9de38, seq=...) at ../../kdeui/dialogs/kshortcutseditordelegate.cpp:324
#20 0x01733c93 in KShortcutsEditorDelegate::qt_metacall (this=0xaf9de38, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfc0ac28) at ./kshortcutsdialog_p.moc:94
#21 0x01e3fb7d in metacall (argv=0xbfc0ac28, idx=19, cl=QMetaObject::InvokeMetaMethod, object=0xaf9de38) at kernel/qmetaobject.cpp:237
#22 QMetaObject::metacall (object=0xaf9de38, cl=QMetaObject::InvokeMetaMethod, idx=19, argv=0xbfc0ac28) at kernel/qmetaobject.cpp:232
#23 0x01e4ea6a in QMetaObject::activate (sender=0x9903978, m=0x19f824c, local_signal_index=0, argv=0xbfc0ac28) at kernel/qobject.cpp:3278
#24 0x01733ce5 in ShortcutEditWidget::keySequenceChanged (this=0x9903978, _t1=...) at ./kshortcutsdialog_p.moc:237
#25 0x01727d79 in ShortcutEditWidget::defaultToggled (this=0x9903978, checked=false) at ../../kdeui/dialogs/kshortcuteditwidget.cpp:113
#26 0x01733df6 in ShortcutEditWidget::qt_metacall (this=0x9903978, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfc0ad88) at ./kshortcutsdialog_p.moc:224
#27 0x01e3fb7d in metacall (argv=0xbfc0ad88, idx=30, cl=QMetaObject::InvokeMetaMethod, object=0x9903978) at kernel/qmetaobject.cpp:237
#28 QMetaObject::metacall (object=0x9903978, cl=QMetaObject::InvokeMetaMethod, idx=30, argv=0xbfc0ad88) at kernel/qmetaobject.cpp:232
#29 0x01e4ea6a in QMetaObject::activate (sender=0xa8959f0, m=0x8528e60, local_signal_index=4, argv=0xbfc0ad88) at kernel/qobject.cpp:3278
#30 0x079dae7d in QAbstractButton::toggled (this=0xa8959f0, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:213
#31 0x076daf77 in QAbstractButton::setChecked (this=0xa8959f0, checked=false) at widgets/qabstractbutton.cpp:766
#32 0x076db0cd in notifyChecked (this=0xb0a70d0) at widgets/qabstractbutton.cpp:370
#33 QAbstractButtonPrivate::notifyChecked (this=0xb0a70d0) at widgets/qabstractbutton.cpp:357
#34 0x076daf5d in QAbstractButton::setChecked (this=0xa3af010, checked=true) at widgets/qabstractbutton.cpp:764
#35 0x076db110 in QAbstractButton::nextCheckState (this=0xa3af010) at widgets/qabstractbutton.cpp:1020
#36 0x076dabb7 in QAbstractButtonPrivate::click (this=0xb0a70d0) at widgets/qabstractbutton.cpp:528
#37 0x076daeb6 in QAbstractButton::mouseReleaseEvent (this=0xa3af010, e=0xbfc0b3bc) at widgets/qabstractbutton.cpp:1121
#38 0x0731ff98 in QWidget::event (this=0xa3af010, event=0xbfc0b3bc) at kernel/qwidget.cpp:8295
#39 0x076da159 in QAbstractButton::event (this=0xa3af010, e=0xbfc0b3bc) at widgets/qabstractbutton.cpp:1080
#40 0x0777d8e8 in QRadioButton::event (this=0xa3af010, e=0xbfc0b3bc) at widgets/qradiobutton.cpp:257
#41 0x072c5d54 in notify_helper (e=0xbfc0b3bc, receiver=0xa3af010, this=0x970ed48) at kernel/qapplication.cpp:4486
#42 QApplicationPrivate::notify_helper (this=0x970ed48, receiver=0xa3af010, e=0xbfc0b3bc) at kernel/qapplication.cpp:4458
#43 0x072cbdbb in QApplication::notify (this=0x970ed48, receiver=0xa3af010, e=0xbfc0b3bc) at kernel/qapplication.cpp:4047
#44 0x017b8681 in KApplication::notify (this=0xbfc0c6e0, receiver=0xa3af010, event=0xbfc0b3bc) at ../../kdeui/kernel/kapplication.cpp:311
#45 0x01e3919e in QCoreApplication::notifyInternal (this=0xbfc0c6e0, receiver=0xa3af010, event=0xbfc0b3bc) at kernel/qcoreapplication.cpp:787
#46 0x072c6d15 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#47 QApplicationPrivate::sendMouseEvent (receiver=0xa3af010, event=0xbfc0b3bc, alienWidget=0xa3af010, nativeWidget=0xbfc0bbd0, buttonDown=0x7c30eb4, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3146
#48 0x073532c4 in QETWidget::translateMouseEvent (this=0xbfc0bbd0, event=0xbfc0b83c) at kernel/qapplication_x11.cpp:4568
#49 0x07351e4d in QApplication::x11ProcessEvent (this=0xbfc0c6e0, event=0xbfc0b83c) at kernel/qapplication_x11.cpp:3690
#50 0x0737e24c in x11EventSourceDispatch (s=0x9711d40, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#51 0x0567b25f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#52 0x0567b990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#53 0x0567bc2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#54 0x01e67ada in QEventDispatcherGlib::processEvents (this=0x96ce4a0, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#55 0x0737de3a in QGuiEventDispatcherGlib::processEvents (this=0x96ce4a0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#56 0x01e381dd in QEventLoop::processEvents (this=0xbfc0bb40, flags=...) at kernel/qeventloop.cpp:149
#57 0x01e38421 in QEventLoop::exec (this=0xbfc0bb40, flags=...) at kernel/qeventloop.cpp:201
#58 0x077fd7c9 in QDialog::exec (this=0xbfc0bbd0) at dialogs/qdialog.cpp:552
#59 0x017339f0 in KShortcutsDialog::configure (this=0xbfc0bbd0, saveSettings=true) at ../../kdeui/dialogs/kshortcutsdialog.cpp:173
#60 0x081a0b58 in Digikam::DigikamApp::slotEditKeys (this=0x9a1c538) at /build/buildd/digikam-2.1.1/core/digikam/main/digikamapp.cpp:2531
#61 0x081b016d in Digikam::DigikamApp::qt_metacall (this=0x9a1c538, _c=QMetaObject::InvokeMetaMethod, _id=57, _a=0xbfc0bd58) at /build/buildd/digikam-2.1.1/obj-i686-linux-gnu/core/digikam/digikamapp.moc:274
#62 0x01e3fb7d in metacall (argv=0xbfc0bd58, idx=103, cl=QMetaObject::InvokeMetaMethod, object=0x9a1c538) at kernel/qmetaobject.cpp:237
#63 QMetaObject::metacall (object=0x9a1c538, cl=QMetaObject::InvokeMetaMethod, idx=103, argv=0xbfc0bd58) at kernel/qmetaobject.cpp:232
#64 0x01e4ea6a in QMetaObject::activate (sender=0xa41f2d0, m=0x8528f50, local_signal_index=1, argv=0xbfc0bd58) at kernel/qobject.cpp:3278
#65 0x072be83d in QAction::triggered (this=0xa41f2d0, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#66 0x072beadb in QAction::activate (this=0xa41f2d0, event=QAction::Trigger) at kernel/qaction.cpp:1257
#67 0x072bffa8 in trigger (this=0xa41f2d0) at kernel/qaction.h:218
#68 QAction::qt_metacall (this=0xa41f2d0, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0xaf45b68) at .moc/release-shared/moc_qaction.cpp:174
#69 0x073277f2 in QWidgetAction::qt_metacall (this=0xa41f2d0, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0xaf45b68) at .moc/release-shared/moc_qwidgetaction.cpp:67
#70 0x016b7e22 in KAction::qt_metacall (this=0xa41f2d0, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0xaf45b68) at ./kaction.moc:95
#71 0x01e3fb7d in metacall (argv=0xaf45b68, idx=12, cl=QMetaObject::InvokeMetaMethod, object=0xa41f2d0) at kernel/qmetaobject.cpp:237
#72 QMetaObject::metacall (object=0xa41f2d0, cl=QMetaObject::InvokeMetaMethod, idx=12, argv=0xaf45b68) at kernel/qmetaobject.cpp:232
#73 0x01e4a685 in QMetaCallEvent::placeMetaCall (this=0xafbb0b8, object=0xa41f2d0) at kernel/qobject.cpp:535
#74 0x01e51b52 in QObject::event (this=0xa41f2d0, e=0xafbb0b8) at kernel/qobject.cpp:1217
#75 0x072bebb1 in event (e=<optimized out>, this=<optimized out>) at kernel/qaction.cpp:1187
#76 QAction::event (this=0xb1c9601, e=0x0) at kernel/qaction.cpp:1172
#77 0x016b620f in KAction::event (this=0xa41f2d0, event=0xafbb0b8) at ../../kdeui/actions/kaction.cpp:131
#78 0x072c5d54 in notify_helper (e=0xafbb0b8, receiver=0xa41f2d0, this=0x970ed48) at kernel/qapplication.cpp:4486
#79 QApplicationPrivate::notify_helper (this=0x970ed48, receiver=0xa41f2d0, e=0xafbb0b8) at kernel/qapplication.cpp:4458
#80 0x072cb103 in QApplication::notify (this=0xafbb0b8, receiver=0xa41f2d0, e=0xafbb0b8) at kernel/qapplication.cpp:3886
#81 0x017b8681 in KApplication::notify (this=0xbfc0c6e0, receiver=0xa41f2d0, event=0xafbb0b8) at ../../kdeui/kernel/kapplication.cpp:311
#82 0x01e3919e in QCoreApplication::notifyInternal (this=0xbfc0c6e0, receiver=0xa41f2d0, event=0xafbb0b8) at kernel/qcoreapplication.cpp:787
#83 0x01e3cf93 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#84 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x96cd790) at kernel/qcoreapplication.cpp:1428
#85 0x01e3d0ec in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1321
#86 0x01e676a4 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#87 postEventSourceDispatch (s=0x9710780) at kernel/qeventdispatcher_glib.cpp:277
#88 0x0567b25f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#89 0x0567b990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#90 0x0567bc2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#91 0x01e67ada in QEventDispatcherGlib::processEvents (this=0x96ce4a0, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#92 0x0737de3a in QGuiEventDispatcherGlib::processEvents (this=0x96ce4a0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#93 0x01e381dd in QEventLoop::processEvents (this=0xbfc0c5c4, flags=...) at kernel/qeventloop.cpp:149
#94 0x01e38421 in QEventLoop::exec (this=0xbfc0c5c4, flags=...) at kernel/qeventloop.cpp:201
#95 0x01e3d19d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#96 0x072c38f4 in QApplication::exec () at kernel/qapplication.cpp:3760
#97 0x080b4b64 in main (argc=186422888, argv=0xbfc0a878) at /build/buildd/digikam-2.1.1/core/digikam/main/main.cpp:232

Reported using DrKonqi
Comment 1 caulier.gilles 2011-12-05 14:09:23 UTC
It's crash in KDE API, not in digiKam...

Gilles Caulier
Comment 2 caulier.gilles 2011-12-13 13:43:57 UTC
Joe,

Can you get a different backtrace of crash, running digiKam through gdb ?

Gilles Caulier
Comment 3 caulier.gilles 2011-12-16 11:31:11 UTC
Joe,

It still valid using digiKam 2.4 ?

Gilles Caulier
Comment 4 Joe 2011-12-16 16:30:51 UTC
(In reply to comment #3)
> Joe,
> 
> It still valid using digiKam 2.4 ?
> 
> Gilles Caulier

Gilles,

Sorry for taking so long to reply. It might just be that I have an older box, Pentium 3 with 512MBs Memory. Tried running the program through gdb but took forever and could not reproduce the error. I recently only switched to 2.1.1 from a very old version and have a large collection of photographs - so trying the update to 2.4 is probably not worth it.

If I run into the problem again I will chase this down, but for now all seems OK. I do not use too many shortcuts and now that it is set I am not having issues.

Joe