Bug 177008 - systemsetting crash with input actions
Summary: systemsetting crash with input actions
Status: RESOLVED FIXED
Alias: None
Product: khotkeys
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Michael Jansen
URL:
Keywords:
: 182421 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-12-05 20:04 UTC by francisco_t
Modified: 2009-05-18 00:57 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Proposed patch to avoid the deleting of the action name when editing (557 bytes, patch)
2008-12-30 21:30 UTC, Dario Andres
Details
backtrace of crash with KDE 4.1.96 (5.34 KB, text/plain)
2009-01-21 00:31 UTC, Lukas Middendorf
Details

Note You need to log in before you can comment on or make changes to this bug.
Description francisco_t 2008-12-05 20:04:17 UTC
Version:           4.1.80 (using Devel)
OS:                Linux
Installed from:    Compiled sources

I did:
1.- Open systemsetting
2.- Open input actions
3.- Double clic on any action then the action name is delete (??!!)
4.- Press escape and the action name is empty.
5.- Don't apply and go back. Don't save
6.- Systemsetting crash, Only ones.


Aplicación: Configuración del sistema (systemsettings), señal SIGABRT

Thread 1 (Thread 0xb61a56c0 (LWP 9857)):
[KCrash Handler]
#6  0xb80cb430 in __kernel_vsyscall ()
#7  0xb6899880 in raise () from /lib/tls/i686/cmov/libc.so.6
#8  0xb689b248 in abort () from /lib/tls/i686/cmov/libc.so.6
#9  0xb748f795 in qt_message_output () from /usr/lib/libQtCore.so.4
#10 0xb748f872 in qFatal () from /usr/lib/libQtCore.so.4
#11 0xb748f915 in qt_assert () from /usr/lib/libQtCore.so.4
#12 0xb44cce60 in KHotKeys::ShortcutTrigger::shortcut () from /usr/lib/libkhotkeysprivate.so.4
#13 0xb44f7885 in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#14 0xb44fd4ac in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#15 0xb44ef453 in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#16 0xb44ef6b5 in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#17 0xb44efbb1 in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#18 0xb759ca60 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#19 0xb759d7e2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#20 0xb7142f89 in QItemSelectionModel::currentChanged () from /usr/lib/libQtGui.so.4
#21 0xb714312d in QItemSelectionModel::setCurrentIndex () from /usr/lib/libQtGui.so.4
#22 0xb70ee2f1 in QAbstractItemView::focusInEvent () from /usr/lib/libQtGui.so.4
#23 0xb6c82655 in QWidget::event () from /usr/lib/libQtGui.so.4
#24 0xb6fb9fd3 in QFrame::event () from /usr/lib/libQtGui.so.4
#25 0xb70512ad in QAbstractScrollArea::event () from /usr/lib/libQtGui.so.4
#26 0xb70ee52c in QAbstractItemView::event () from /usr/lib/libQtGui.so.4
#27 0xb6c2a8ec in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#28 0xb6c327fa in QApplication::notify () from /usr/lib/libQtGui.so.4
#29 0xb7ad7c6d in KApplication::notify () from /usr/lib/libkdeui.so.5
#30 0xb7587e61 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#31 0xb759fa2e in QCoreApplication::sendEvent () from /usr/lib/libQtCore.so.4
#32 0xb6c311df in QApplicationPrivate::setFocusWidget () from /usr/lib/libQtGui.so.4
#33 0xb6c83d35 in QWidget::setFocus () from /usr/lib/libQtGui.so.4
#34 0xb6c67cc6 in QStackedLayout::setCurrentIndex () from /usr/lib/libQtGui.so.4
#35 0xb6c67e0d in QStackedLayout::setCurrentWidget () from /usr/lib/libQtGui.so.4
#36 0xb70274bc in QStackedWidget::setCurrentWidget () from /usr/lib/libQtGui.so.4
#37 0x0805ae30 in _start ()
Comment 1 Dario Andres 2008-12-30 21:29:11 UTC
Here using:

Qt: 4.4.3 + qt-copy-patches-889120
KDE: 4.1.86 (KDE 4.1.86 (KDE 4.2 >= 20081221))
kdelibs svn rev. 903451 / kdebase svn rev. 903451
on ArchLinux x86_64 - Kernel 2.6.27.10

I can't reproduce this crash. Can you still reproduce it with a recent KDE version (4.2beta2 / 4.2svn) ? Thanks :)

(I'm going to post a patch to avoid the name being deleted on double click (on edit)).
Comment 2 Dario Andres 2008-12-30 21:30:41 UTC
Created attachment 29766 [details]
Proposed patch to avoid the deleting of the action name when editing
Comment 3 francisco_t 2009-01-01 23:03:26 UTC
Now I use:
- kubuntu intrepid with kde 4.2 beta 2
- kde-four-live 4.2 beta 2

Bug in both.

I repeated the steps above and system setting doesn't crash now.
So I do double click in a name action and it deletes but if I press escape, the last name is recovered.

BUT System setting crashes again, in a slightly different way.

First case:
1.- I open system setting, input actions.
2.- I open a group and disable an action.
3.- I click in Overview (going back menu system setting)
4.- I open input actions again.
5.- I try to open a group of actions
6.- and System setting crashes.

Second case:
1.- I open system setting and input actions
2.- I do double click in an action name, I click in some place and the name is empty (if I press escape the name is not empty)
3.- I click in Overview (going back menu system setting)
4.- I try to open input actions again
5.- and System setting crashes


Trace in both cases:

Aplicación: Configuración del sistema (systemsettings), señal SIGABRT

Thread 1 (Thread 0xb5fd86c0 (LWP 7402)):
[KCrash Handler]
#6  0xb7f0e430 in __kernel_vsyscall ()
#7  0xb66d3880 in raise () from /lib/tls/i686/cmov/libc.so.6
#8  0xb66d5248 in abort () from /lib/tls/i686/cmov/libc.so.6
#9  0xb72c9795 in qt_message_output () from /usr/lib/libQtCore.so.4
#10 0xb72c9872 in qFatal () from /usr/lib/libQtCore.so.4
#11 0xb72c9915 in qt_assert () from /usr/lib/libQtCore.so.4
#12 0xb468fe60 in KHotKeys::ShortcutTrigger::shortcut () from /usr/lib/libkhotkeysprivate.so.4
#13 0xb46ba865 in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#14 0xb46c02dc in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#15 0xb46b23d3 in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#16 0xb46b2635 in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#17 0xb46b2b31 in ?? () from /usr/lib/kde4/kcm_hotkeys.so
#18 0xb73d6a60 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#19 0xb73d77e2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#20 0xb6f7cf89 in QItemSelectionModel::currentChanged () from /usr/lib/libQtGui.so.4
#21 0xb6f7d12d in QItemSelectionModel::setCurrentIndex () from /usr/lib/libQtGui.so.4
#22 0xb6f282f1 in QAbstractItemView::focusInEvent () from /usr/lib/libQtGui.so.4
#23 0xb6abc655 in QWidget::event () from /usr/lib/libQtGui.so.4
#24 0xb6df3fd3 in QFrame::event () from /usr/lib/libQtGui.so.4
#25 0xb6e8b2ad in QAbstractScrollArea::event () from /usr/lib/libQtGui.so.4
#26 0xb6f2852c in QAbstractItemView::event () from /usr/lib/libQtGui.so.4
#27 0xb6a648ec in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#28 0xb6a6c7fa in QApplication::notify () from /usr/lib/libQtGui.so.4
#29 0xb7911d3d in KApplication::notify () from /usr/lib/libkdeui.so.5
#30 0xb73c1e61 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#31 0xb73d9a2e in QCoreApplication::sendEvent () from /usr/lib/libQtCore.so.4
#32 0xb6a6b1df in QApplicationPrivate::setFocusWidget () from /usr/lib/libQtGui.so.4
#33 0xb6abdd35 in QWidget::setFocus () from /usr/lib/libQtGui.so.4
#34 0xb6a6d9b2 in QApplication::notify () from /usr/lib/libQtGui.so.4
#35 0xb7911d3d in KApplication::notify () from /usr/lib/libkdeui.so.5
#36 0xb73c1e61 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#37 0xb6a6c36e in QApplicationPrivate::sendMouseEvent () from /usr/lib/libQtGui.so.4
#38 0xb6ad6656 in ?? () from /usr/lib/libQtGui.so.4
#39 0xb6ad59e5 in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#40 0xb6aff7aa in ?? () from /usr/lib/libQtGui.so.4
#41 0xb630f6f8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#42 0xb6312da3 in ?? () from /usr/lib/libglib-2.0.so.0
#43 0xb6312f61 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#44 0xb73ec478 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#45 0xb6afeea5 in ?? () from /usr/lib/libQtGui.so.4
#46 0xb73c052a in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#47 0xb73c06ea in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#48 0xb73c2da5 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#49 0xb6a64767 in QApplication::exec () from /usr/lib/libQtGui.so.4
#50 0x0805714b in _start ()

Comment 4 francisco_t 2009-01-02 08:29:49 UTC
Sorry, I forgot to said:
Don't apply the changes.
Don't save the changes when go back to system setting menu.
Comment 5 Dario Andres 2009-01-02 13:28:03 UTC
Here using:

I can confirm the crash following the steps in comment 3. (For both situations the assert is the same "Q_ASSERT(action)" )

Backtrace:

Application: System Settings (systemsettings), signal SIGABRT
0x00007f9f3d568fd0 in __nanosleep_nocancel () from /lib/libc.so.6

Thread 1 (Thread 0x7f9f40cec750 (LWP 23248)):
[KCrash Handler]
#5  0x00007f9f3d4fc0c5 in raise () from /lib/libc.so.6
#6  0x00007f9f3d4fd5e3 in abort () from /lib/libc.so.6
#7  0x00007f9f3ef07a25 in qt_message_output (msgType=QtFatalMsg, buf=<value optimized out>) at global/qglobal.cpp:2102
#8  0x00007f9f3ef07b47 in qFatal (msg=<value optimized out>) at global/qglobal.cpp:2303
#9  0x00007f9f35b30108 in KHotKeys::ShortcutTrigger::shortcut (this=<value optimized out>)
    at /home/kde-devel/kde/src/KDE/kdebase/workspace/khotkeys/libkhotkeysprivate/triggers/shortcut_trigger.cpp:159
#10 0x00007f9f35d6570a in ShortcutTriggerWidget::isChanged (this=<value optimized out>) at /home/kde-devel/kde/src/KDE/kdebase/workspace/khotkeys/kcm_hotkeys/triggers/shortcut_trigger_widget.cpp:92
#11 0x00007f9f35d6a109 in SimpleActionDataWidget::isChanged (this=0xa4d830) at /home/kde-devel/kde/src/KDE/kdebase/workspace/khotkeys/kcm_hotkeys/simple_action_data_widget.cpp:54
#12 0x00007f9f35d5e26e in KCMHotkeysPrivate::maybeShowWidget (this=0x9fadd0) at /home/kde-devel/kde/src/KDE/kdebase/workspace/khotkeys/kcm_hotkeys/kcm_hotkeys.cpp:336
#13 0x00007f9f35d5e4b9 in KCMHotkeys::currentChanged (this=0x9fb460, pCurrent=<value optimized out>, pPrevious=@0xa987a0)
    at /home/kde-devel/kde/src/KDE/kdebase/workspace/khotkeys/kcm_hotkeys/kcm_hotkeys.cpp:169
#14 0x00007f9f35d5e950 in KCMHotkeys::qt_metacall (this=0x9fb460, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7fff48e2a0b0)
    at /home/kde-devel/kde/build/KDE/kdebase/workspace/khotkeys/kcm_hotkeys/moc_kcm_hotkeys.cpp:70
#15 0x00007f9f3f002ac0 in QMetaObject::activate (sender=0xa6b410, from_signal_index=<value optimized out>, to_signal_index=5, argv=0xffffffffffffffff) at kernel/qobject.cpp:3028
#16 0x00007f9f3e5e8f7a in QItemSelectionModel::currentChanged (this=0x5ad0, _t1=<value optimized out>, _t2=<value optimized out>) at .moc/debug-shared/moc_qitemselectionmodel.cpp:151
#17 0x00007f9f3e5e90c4 in QItemSelectionModel::setCurrentIndex (this=0xa6b410, index=<value optimized out>, command={i = 1222812160}) at itemviews/qitemselectionmodel.cpp:1082
#18 0x00007f9f3e59ac45 in QAbstractItemView::focusInEvent (this=0x9fb520, event=<value optimized out>) at itemviews/qabstractitemview.cpp:1923
#19 0x00007f9f3e1ad9b3 in QWidget::event (this=0x9fb520, event=0x7fff48e2a880) at kernel/qwidget.cpp:7261
#20 0x00007f9f3e515e69 in QAbstractScrollArea::event (this=0x9fb520, e=0x7fff48e2a880) at widgets/qabstractscrollarea.cpp:899
#21 0x00007f9f3e15b0ad in QApplicationPrivate::notify_helper (this=0x719bd0, receiver=0x9fb520, e=0x7fff48e2a880) at kernel/qapplication.cpp:3803
#22 0x00007f9f3e16240e in QApplication::notify (this=0x7fff48e2bdd0, receiver=0x9fb520, e=0x7fff48e2a880) at kernel/qapplication.cpp:3768
#23 0x00007f9f3fbc455b in KApplication::notify (this=0x7fff48e2bdd0, receiver=0x9fb520, event=0x7fff48e2a880) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:307
#24 0x00007f9f3efedd90 in QCoreApplication::notifyInternal (this=0x7fff48e2bdd0, receiver=0x9fb520, event=0x7fff48e2a880) at kernel/qcoreapplication.cpp:583
#25 0x00007f9f3e160f04 in QApplicationPrivate::setFocusWidget (focus=<value optimized out>, reason=Qt::MouseFocusReason) at kernel/qapplication.cpp:1999
#26 0x00007f9f3e1abf0a in QWidget::setFocus (this=0x9fb520, reason=Qt::MouseFocusReason) at kernel/qwidget.cpp:5376
#27 0x00007f9f3e16345c in QApplication::notify (this=0x7fff48e2bdd0, receiver=0x9fae20, e=0x7fff48e2b040) at kernel/qapplication.cpp:3486
#28 0x00007f9f3fbc455b in KApplication::notify (this=0x7fff48e2bdd0, receiver=0x9fae20, event=0x7fff48e2b040) at /home/kde-devel/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:307
#29 0x00007f9f3efedd90 in QCoreApplication::notifyInternal (this=0x7fff48e2bdd0, receiver=0x9fae20, event=0x7fff48e2b040) at kernel/qcoreapplication.cpp:583
#30 0x00007f9f3e161fe2 in QApplicationPrivate::sendMouseEvent (receiver=0x9fae20, event=0x7fff48e2b040, alienWidget=0x0, nativeWidget=0x9fae20, buttonDown=<value optimized out>, 
    lastMouseReceiver=@0x7f9f3ea4b450) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:212
#31 0x00007f9f3e1bfbec in QETWidget::translateMouseEvent (this=0x9fae20, event=<value optimized out>) at kernel/qapplication_x11.cpp:4044
#32 0x00007f9f3e1bed47 in QApplication::x11ProcessEvent (this=0x7c, event=0x7fff48e2b910) at kernel/qapplication_x11.cpp:3162
#33 0x00007f9f3e1e3724 in x11EventSourceDispatch (s=0x7205a0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:142
#34 0x00007f9f3a54eaa2 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#35 0x00007f9f3a55221d in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#36 0x00007f9f3a5523db in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#37 0x00007f9f3f014cdf in QEventDispatcherGlib::processEvents (this=0x6e3e70, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:319
#38 0x00007f9f3e1e2f7f in QGuiEventDispatcherGlib::processEvents (this=0x5ad0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:198
#39 0x00007f9f3efec9c2 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1222818816}) at kernel/qeventloop.cpp:143
#40 0x00007f9f3efecb55 in QEventLoop::exec (this=0x7fff48e2bc40, flags={i = 1222818896}) at kernel/qeventloop.cpp:190
#41 0x00007f9f3eff18f7 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:845
#42 0x0000000000411737 in main (argc=5, argv=0x7fff48e2c0f8) at /home/kde-devel/kde/src/KDE/kdebase/workspace/systemsettings/main.cpp:67

Comment 6 Lukas Middendorf 2009-01-21 00:31:18 UTC
Created attachment 30473 [details]
backtrace of crash with KDE 4.1.96

I can also reproduce this with an other method:
1. Open systemsetting
2. Open input actions
3. Double click on any action
4. Click on any other action
5. Click "Reset"
6. Click on any action

I'm running KDE 4.1.96 from kde-redhat on Fedora 10.
Comment 7 Dario Andres 2009-01-23 11:31:13 UTC
@Lukas: the backtrace in comment 6 seems to be different from the original one. Can you file a new bug report for that? (paste the backtrace inline in the report explanation instead of attaching it in a file)
Thanks a lot :)
Comment 8 Dario Andres 2009-01-31 14:36:25 UTC
*** Bug 182421 has been marked as a duplicate of this bug. ***
Comment 9 Michael Jansen 2009-05-18 00:57:07 UTC
SVN commit 969321 by mjansen:

Switch to globalSettings first. The reload. Fixes a crash when  going back to systemsettings
and clicking "discard changes".

BUG:177008

 M  +3 -1      kcm_hotkeys.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=969321