Application: systemsettings (1.0) KDE Platform Version: 4.4.2 (KDE 4.4.2) Qt Version: 4.6.2 Operating System: Linux 2.6.32-21-generic i686 Distribution: Ubuntu 10.04.1 LTS -- Information about the crash: As Font Installer asks me authentication password for each font I want to install (I selected like 900+ fonts) I pressed Esc repeatedly to stop asking me the password and it crashed. The crash can be reproduced every time. -- Backtrace: Application: System Settings (systemsettings), signal: Segmentation fault [Current thread is 1 (Thread 0xb774b710 (LWP 13124))] Thread 2 (Thread 0xb4f3ab70 (LWP 13125)): #0 0x00dc0422 in __kernel_vsyscall () #1 0x00acbb86 in poll () from /lib/tls/i686/cmov/libc.so.6 #2 0x00e0d4eb in g_poll () from /lib/libglib-2.0.so.0 #3 0x00e000ac in ?? () from /lib/libglib-2.0.so.0 #4 0x00e004b8 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #5 0x03acf60f in QEventDispatcherGlib::processEvents (this=0x968ffc0, flags=...) at kernel/qeventdispatcher_glib.cpp:414 #6 0x03aa2059 in QEventLoop::processEvents (this=0xb4f3a290, flags=) at kernel/qeventloop.cpp:149 #7 0x03aa24aa in QEventLoop::exec (this=0xb4f3a290, flags=...) at kernel/qeventloop.cpp:201 #8 0x0399e5a8 in QThread::exec (this=0x98e12d0) at thread/qthread.cpp:487 #9 0x03a81c1b in QInotifyFileSystemWatcherEngine::run (this=0x98e12d0) at io/qfilesystemwatcher_inotify.cpp:248 #10 0x039a132e in QThreadPrivate::start (arg=0x98e12d0) at thread/qthread_unix.cpp:248 #11 0x0030796e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0 #12 0x00ad9a4e in clone () from /lib/tls/i686/cmov/libc.so.6 Thread 1 (Thread 0xb774b710 (LWP 13124)): [KCrash Handler] #6 0x00a7bea9 in free () from /lib/tls/i686/cmov/libc.so.6 #7 0x001cb741 in operator delete(void*) () from /usr/lib/libstdc++.so.6 #8 0x029064b7 in ~CJobRunner (this=0xb633c0, __in_chrg=<value optimized out>) at ../../../../kcontrol/kfontinst/kcmfontinst/JobRunner.cpp:218 #9 0x03ab318f in QObjectPrivate::deleteChildren (this=0x992cf98) at kernel/qobject.cpp:1986 #10 0x0118d3d3 in ~QWidget (this=0x992cf00, __in_chrg=<value optimized out>) at kernel/qwidget.cpp:1469 #11 0x008fa37e in ~KCModule (this=0x992cf00, __in_chrg=<value optimized out>) at ../../kdeui/widgets/kcmodule.cpp:188 #12 0x0293187d in ~CKCmFontInst (this=0x992cf00, __in_chrg=<value optimized out>) at ../../../../kcontrol/kfontinst/kcmfontinst/KCmFontInst.cpp:419 #13 0x00375e5c in KCModuleProxy::deleteClient (this=0x97b6a30) at ../../kutils/kcmoduleproxy.cpp:219 #14 0x00377c55 in ~KCModuleProxy (this=0x97b6a30, __in_chrg=<value optimized out>) at ../../kutils/kcmoduleproxy.cpp:210 #15 0x03ab318f in QObjectPrivate::deleteChildren (this=0x98eff00) at kernel/qobject.cpp:1986 #16 0x0118c873 in ~QWidget (this=0x97b6c90, __in_chrg=<value optimized out>) at kernel/qwidget.cpp:1469 #17 0x03ab318f in QObjectPrivate::deleteChildren (this=0x992a8b8) at kernel/qobject.cpp:1986 #18 0x0118d3d3 in ~QWidget (this=0x97b6c78, __in_chrg=<value optimized out>) at kernel/qwidget.cpp:1469 #19 0x015822d1 in ~QFrame (this=0x97b6c78, __in_chrg=<value optimized out>) at widgets/qframe.cpp:242 #20 0x0161e114 in ~QAbstractScrollArea (this=0x97b6c78, __in_chrg=<value optimized out>) at widgets/qabstractscrollarea.cpp:524 #21 0x01622555 in ~QScrollArea (this=0x97b6c78, __in_chrg=<value optimized out>) at widgets/qscrollarea.cpp:176 #22 0x0087ecd4 in ~Private (this=0x95f57e8, __in_chrg=<value optimized out>) at ../../kdeui/paged/kpagewidgetmodel.cpp:40 #23 ~KPageWidgetItem (this=0x95f57e8, __in_chrg=<value optimized out>) at ../../kdeui/paged/kpagewidgetmodel.cpp:84 #24 0x0087e1c5 in ~PageItem (this=0x9615c90, __in_chrg=<value optimized out>) at ../../kdeui/paged/kpagewidgetmodel.cpp:174 #25 0x0087eb97 in KPageWidgetModel::removePage (this=0x9840e00, item=0x95f57e8) at ../../kdeui/paged/kpagewidgetmodel.cpp:481 #26 0x0087cb5e in KPageWidget::removePage (this=0x983ebe8, item=0x95f57e8) at ../../kdeui/paged/kpagewidget.cpp:113 #27 0x00fe8f98 in ModuleView::closeModules (this=0x983ebc8) at ../../../systemsettings/core/ModuleView.cpp:283 #28 0x065a0f3f in IconMode::backToOverview (this=0x983b7a8) at ../../../systemsettings/icons/IconMode.cpp:153 #29 0x065a1753 in IconMode::qt_metacall (this=0x983b7a8, _c=QMetaObject::InvokeMetaMethod, _id=14, _a=0xbfc35f7c) at ./IconMode.moc:82 #30 0x03aa8c9a in QMetaObject::metacall (object=0x983b7a8, cl=169906432, idx=14, argv=0xbfc35f7c) at kernel/qmetaobject.cpp:237 #31 0x03ab73d5 in QMetaObject::activate (sender=0x983ebc8, m=0xff0b3c, local_signal_index=1, argv=0x0) at kernel/qobject.cpp:3293 #32 0x00fe8d67 in ModuleView::closeRequest (this=0x983ebc8) at ./ModuleView.moc:119 #33 0x00fe8ed4 in ModuleView::keyPressEvent (this=0x983ebc8, event=0xbfc36584) at ../../../systemsettings/core/ModuleView.cpp:383 #34 0x01185503 in QWidget::event (this=0x983ebc8, event=0xbfc36584) at kernel/qwidget.cpp:8033 #35 0x011274dc in QApplicationPrivate::notify_helper (this=0x95fd130, receiver=0x983ebc8, e=0xbfc36584) at kernel/qapplication.cpp:4300 #36 0x0112fb71 in QApplication::notify (this=0xbfc3925c, receiver=0x983ebc8, e=0xbfc36584) at kernel/qapplication.cpp:3763 #37 0x00834f2a in KApplication::notify (this=0xbfc3925c, receiver=0x9604c68, event=0xbfc36584) at ../../kdeui/kernel/kapplication.cpp:302 #38 0x03aa3a3b in QCoreApplication::notifyInternal (this=0xbfc3925c, receiver=0x9604c68, event=0xbfc36584) at kernel/qcoreapplication.cpp:704 #39 0x011282be in QCoreApplication::sendSpontaneousEvent (receiver=0x9604c68, event=0xbfc37e88) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218 #40 qt_sendSpontaneousEvent (receiver=0x9604c68, event=0xbfc37e88) at kernel/qapplication.cpp:5279 #41 0x011e1d90 in QKeyMapper::sendKeyEvent (keyWidget=0x9604c68, grab=false, type=QEvent::KeyPress, code=16777216, modifiers=..., text=..., autorepeat=<value optimized out>, count=<value optimized out>, nativeScanCode=9, nativeVirtualKey=65307, nativeModifiers=16) at kernel/qkeymapper_x11.cpp:1861 #42 0x011e42f5 in QKeyMapperPrivate::translateKeyEvent (this=0x9628b50, keyWidget=0x9604c68, event=0xbfc36c4c, grab=false) at kernel/qkeymapper_x11.cpp:1831 #43 0x011b7757 in QApplication::x11ProcessEvent (this=0xbfc3925c, event=0xbfc36c4c) at kernel/qapplication_x11.cpp:3394 #44 0x011e760a in x11EventSourceDispatch (s=0x9600168, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146 #45 0x00dfc5e5 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #46 0x00e002d8 in ?? () from /lib/libglib-2.0.so.0 #47 0x00e004b8 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #48 0x03acf5d5 in QEventDispatcherGlib::processEvents (this=0x95dd4a0, flags=...) at kernel/qeventdispatcher_glib.cpp:412 #49 0x011e7135 in QGuiEventDispatcherGlib::processEvents (this=0x95dd4a0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #50 0x03aa2059 in QEventLoop::processEvents (this=0x9c496c0, flags=) at kernel/qeventloop.cpp:149 #51 0x03aa24aa in QEventLoop::exec (this=0x9c496c0, flags=...) at kernel/qeventloop.cpp:201 #52 0x0290a142 in KFI::CJobRunner::setPage (this=0xbfc37e90, page=3, msg=...) at ../../../../kcontrol/kfontinst/kcmfontinst/JobRunner.cpp:606 #53 0x0290aa3f in KFI::CJobRunner::dbusStatus (this=0xbfc37e90, pid=13124, status=146) at ../../../../kcontrol/kfontinst/kcmfontinst/JobRunner.cpp:432 #54 0x0290bdf8 in KFI::CJobRunner::qt_metacall (this=0xbfc37e90, _c=QMetaObject::InvokeMetaMethod, _id=77, _a=0xbfc37154) at ./JobRunner.moc:87 #55 0x03aa8c9a in QMetaObject::metacall (object=0xbfc37e90, cl=169906432, idx=77, argv=0xbfc37154) at kernel/qmetaobject.cpp:237 #56 0x03ab73d5 in QMetaObject::activate (sender=0x96138c8, m=0x29586a8, local_signal_index=4, argv=0xbfc37154) at kernel/qobject.cpp:3293 #57 0x0290e9b9 in OrgKdeFontinstInterface::status (this=0x96138c8, _t1=13124, _t2=146) at ./FontinstIface.moc:167 #58 0x0290f075 in OrgKdeFontinstInterface::qt_metacall (this=0x96138c8, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfc3756c) at ./FontinstIface.moc:115 #59 0x00bc8b34 in QDBusConnectionPrivate::deliverCall (this=0x95f79e0, object=0x96138c8, msg=..., metaTypes=..., slotIdx=9) at qdbusintegrator.cpp:904 #60 0x00bd3ea7 in QDBusCallDeliveryEvent::placeMetaCall (this=0xa190b20, object=0x96138c8) at qdbusintegrator_p.h:101 #61 0x03ab43fe in QObject::event (this=0x96138c8, e=0xa190b20) at kernel/qobject.cpp:1248 #62 0x011274dc in QApplicationPrivate::notify_helper (this=0x95fd130, receiver=0x96138c8, e=0xa190b20) at kernel/qapplication.cpp:4300 #63 0x0112e05e in QApplication::notify (this=0xbfc3925c, receiver=0x96138c8, e=0xa190b20) at kernel/qapplication.cpp:3704 #64 0x00834f2a in KApplication::notify (this=0xbfc3925c, receiver=0x96138c8, event=0xa190b20) at ../../kdeui/kernel/kapplication.cpp:302 #65 0x03aa3a3b in QCoreApplication::notifyInternal (this=0xbfc3925c, receiver=0x96138c8, event=0xa190b20) at kernel/qcoreapplication.cpp:704 #66 0x03aa6473 in QCoreApplication::sendEvent (receiver=0x0, event_type=0, data=0x95dd2c0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #67 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x95dd2c0) at kernel/qcoreapplication.cpp:1345 #68 0x03aa65dd in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1238 #69 0x03acfadf in QCoreApplication::sendPostedEvents (s=0x95ff310) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220 #70 postEventSourceDispatch (s=0x95ff310) at kernel/qeventdispatcher_glib.cpp:276 #71 0x00dfc5e5 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #72 0x00e002d8 in ?? () from /lib/libglib-2.0.so.0 #73 0x00e004b8 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #74 0x03acf5d5 in QEventDispatcherGlib::processEvents (this=0x95dd4a0, flags=...) at kernel/qeventdispatcher_glib.cpp:412 #75 0x011e7135 in QGuiEventDispatcherGlib::processEvents (this=0x95dd4a0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #76 0x03aa2059 in QEventLoop::processEvents (this=0xbfc37d90, flags=) at kernel/qeventloop.cpp:149 #77 0x03aa24aa in QEventLoop::exec (this=0xbfc37d90, flags=...) at kernel/qeventloop.cpp:201 #78 0x016664f3 in QDialog::exec (this=0xbfc37e90) at dialogs/qdialog.cpp:546 #79 0x0290c11a in KFI::CJobRunner::exec (this=0xbfc37e90, cmd=KFI::CJobRunner::CMD_INSTALL, urls=..., destIsSystem=true) at ../../../../kcontrol/kfontinst/kcmfontinst/JobRunner.cpp:316 #80 0x02934d74 in KFI::CKCmFontInst::doCmd (this=0x992cf00, cmd=KFI::CJobRunner::CMD_INSTALL, urls=..., system=<value optimized out>) at ../../../../kcontrol/kfontinst/kcmfontinst/KCmFontInst.cpp:1216 #81 0x0293697e in KFI::CKCmFontInst::addFonts (this=0x992cf00, src=...) at ../../../../kcontrol/kfontinst/kcmfontinst/KCmFontInst.cpp:1068 #82 0x02937938 in KFI::CKCmFontInst::addFonts (this=0x992cf00) at ../../../../kcontrol/kfontinst/kcmfontinst/KCmFontInst.cpp:511 #83 0x0293fde6 in KFI::CKCmFontInst::qt_metacall (this=0x992cf00, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfc38268) at ./KCmFontInst.moc:111 #84 0x03aa8c9a in QMetaObject::metacall (object=0x992cf00, cl=169906432, idx=40, argv=0xbfc38268) at kernel/qmetaobject.cpp:237 #85 0x03ab73d5 in QMetaObject::activate (sender=0x9604c68, m=0x1a628c4, local_signal_index=2, argv=0xbfc38268) at kernel/qobject.cpp:3293 #86 0x01852479 in QAbstractButton::clicked (this=0x9604c68, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:206 #87 0x01531ea9 in QAbstractButtonPrivate::emitClicked (this=0x97ae098) at widgets/qabstractbutton.cpp:546 #88 0x01532cf4 in QAbstractButtonPrivate::click (this=0x97ae098) at widgets/qabstractbutton.cpp:539 #89 0x01532fae in QAbstractButton::mouseReleaseEvent (this=0x9604c68, e=0xbfc389a0) at widgets/qabstractbutton.cpp:1121 #90 0x011857f8 in QWidget::event (this=0x9604c68, event=0xbfc389a0) at kernel/qwidget.cpp:7998 #91 0x01531d4e in QAbstractButton::event (this=0x9604c68, e=0xbfc37e88) at widgets/qabstractbutton.cpp:1080 #92 0x015dc1f2 in QPushButton::event (this=0x9604c68, e=0xbfc389a0) at widgets/qpushbutton.cpp:679 #93 0x011274dc in QApplicationPrivate::notify_helper (this=0x95fd130, receiver=0x9604c68, e=0xbfc389a0) at kernel/qapplication.cpp:4300 #94 0x0112e9f7 in QApplication::notify (this=0xbfc3925c, receiver=0x9604c68, e=0xbfc389a0) at kernel/qapplication.cpp:3865 #95 0x00834f2a in KApplication::notify (this=0xbfc3925c, receiver=0x9604c68, event=0xbfc389a0) at ../../kdeui/kernel/kapplication.cpp:302 #96 0x03aa3a3b in QCoreApplication::notifyInternal (this=0xbfc3925c, receiver=0x9604c68, event=0xbfc389a0) at kernel/qcoreapplication.cpp:704 #97 0x0112d952 in QCoreApplication::sendEvent (receiver=0x9604c68, event=0xbfc389a0, alienWidget=0x9604c68, nativeWidget=0x967e9b0, buttonDown=0x1a6b058, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215 #98 QApplicationPrivate::sendMouseEvent (receiver=0x9604c68, event=0xbfc389a0, alienWidget=0x9604c68, nativeWidget=0x967e9b0, buttonDown=0x1a6b058, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:2965 #99 0x011b9088 in QETWidget::translateMouseEvent (this=0x967e9b0, event=0xbfc38ebc) at kernel/qapplication_x11.cpp:4368 #100 0x011b8511 in QApplication::x11ProcessEvent (this=0xbfc3925c, event=0xbfc38ebc) at kernel/qapplication_x11.cpp:3379 #101 0x011e760a in x11EventSourceDispatch (s=0x9600168, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146 #102 0x00dfc5e5 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #103 0x00e002d8 in ?? () from /lib/libglib-2.0.so.0 #104 0x00e004b8 in g_main_context_iteration () from /lib/libglib-2.0.so.0 #105 0x03acf5d5 in QEventDispatcherGlib::processEvents (this=0x95dd4a0, flags=...) at kernel/qeventdispatcher_glib.cpp:412 #106 0x011e7135 in QGuiEventDispatcherGlib::processEvents (this=0x95dd4a0, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #107 0x03aa2059 in QEventLoop::processEvents (this=0xbfc391b4, flags=) at kernel/qeventloop.cpp:149 #108 0x03aa24aa in QEventLoop::exec (this=0xbfc391b4, flags=...) at kernel/qeventloop.cpp:201 #109 0x03aa669f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981 #110 0x01127577 in QApplication::exec () at kernel/qapplication.cpp:3579 #111 0x08056b5e in main (argc=5, argv=0xbfc393a4) at ../../../systemsettings/app/main.cpp:49 Reported using DrKonqi
Caused by KFI::CJobRunner::exec() spawning a nested event loop, which allows the user to manipulate the UI. During exec() a modal progress dialog should be shown, or the nested event loop avoided.
Git commit cb3fd3ec3ef6ee2831743559f0221781037a3c1a by Craig Drummond. Committed on 24/06/2011 at 18:37. Pushed by craig into branch 'KDE/4.6'. Dont spwan a nested QEventLoop - not really required. BUG:251832 M +45 -53 kcontrol/kfontinst/kcmfontinst/JobRunner.cpp M +2 -3 kcontrol/kfontinst/kcmfontinst/JobRunner.h http://commits.kde.org/kde-workspace/cb3fd3ec3ef6ee2831743559f0221781037a3c1a
Git commit 36ab80448a78a65e58390cb7db0624cd344f6da7 by Craig Drummond. Committed on 24/06/2011 at 18:40. Pushed by craig into branch 'master'. Dont spwan a nested QEventLoop - not really required. BUG:251832 M +50 -55 kcontrol/kfontinst/kcmfontinst/JobRunner.cpp M +2 -3 kcontrol/kfontinst/kcmfontinst/JobRunner.h http://commits.kde.org/kde-workspace/36ab80448a78a65e58390cb7db0624cd344f6da7
Thanks. Since 4.7 is branched, it might make sense to also backport to KDE/4.7.
Git commit bbc2b5f86a0e3501759309deb82382e61d057307 by Craig Drummond. Committed on 25/06/2011 at 11:52. Pushed by craig into branch 'KDE/4.7'. Dont spwan a nested QEventLoop - not really required. BUG:251832 M +50 -55 kcontrol/kfontinst/kcmfontinst/JobRunner.cpp M +2 -3 kcontrol/kfontinst/kcmfontinst/JobRunner.h http://commits.kde.org/kde-workspace/bbc2b5f86a0e3501759309deb82382e61d057307
> --- Comment #4 from Christoph Feck <christoph maxiom de> 2011-06-25 > 07:03:38 --- Thanks. Since 4.7 is branched, it might make sense to also > backport to KDE/4.7. Thanks for the reminder!! I've just 'pushed' the change.