Bug 195682 - Font installer crash on exit
Summary: Font installer crash on exit
Status: RESOLVED FIXED
Alias: None
Product: systemsettings
Classification: Applications
Component: kcm_fontinst (other bugs)
Version First Reported In: unspecified
Platform: Compiled Sources Unspecified
: NOR crash
Target Milestone: ---
Assignee: Craig Drummond
URL:
Keywords:
: 258050 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-06-08 16:29 UTC by Einar Lielmanis
Modified: 2011-02-13 06:40 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Einar Lielmanis 2009-06-08 16:29:31 UTC
Version:           svn:978887 (using Devel)
Installed from:    Compiled sources

Font installer crashes if there are filtered results when exiting.

To reproduce:
1. open font installer from systemsettings,
2. type e.g. "deja" into filter window,
3. press esc to leave
observe crash.

Application: System Settings (systemsettings), signal: Segmentation fault
[KCrash Handler]
#5  0x00007f30ac2e914e in QObject::parent (this=0x18bf870) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:243
#6  0x00007f30ac2f8346 in QWidget::parentWidget (this=0x18bf870) at ../../include/QtGui/../../src/gui/kernel/qwidget.h:988
#7  0x00007f30ac3496c6 in QWidget::window (this=0x18bf870) at kernel/qwidget.cpp:3863
#8  0x00007f30ac2f4808 in QApplicationPrivate::sendSyntheticEnterLeave (this=0x15b0530, widget=0x16df7f0) at kernel/qapplication.cpp:2984
#9  0x00007f30ac351ea8 in QWidget::setVisible (this=0x16df7f0, visible=true) at kernel/qwidget.cpp:6950
#10 0x00007f30ac3357a0 in QWidget::show (this=0x16df7f0) at ../../include/QtGui/../../src/gui/kernel/qwidget.h:473
#11 0x00007f30ac334e91 in QStackedLayout::setCurrentIndex (this=0x1848580, index=0) at kernel/qstackedlayout.cpp:313
#12 0x00007f30ac334ca8 in QStackedLayout::takeAt (this=0x1848580, index=1) at kernel/qstackedlayout.cpp:267
#13 0x00007f30ac3222b0 in removeWidgetRecursively (li=0x1848590, w=0x16a3c50) at kernel/qlayout.cpp:617
#14 0x00007f30ac3225b4 in QLayout::widgetEvent (this=0x1848580, e=0x7fffb6907de0) at kernel/qlayout.cpp:675
#15 0x00007f30ac2f7072 in QApplicationPrivate::notify_helper (this=0x15b0530, receiver=0x18d26d0, e=0x7fffb6907de0) at kernel/qapplication.cpp:4048
#16 0x00007f30ac2f6efd in QApplication::notify (this=0x7fffb690acd0, receiver=0x18d26d0, e=0x7fffb6907de0) at kernel/qapplication.cpp:4022
#17 0x00007f30ad34ef53 in KApplication::notify (this=0x7fffb690acd0, receiver=0x18d26d0, event=0x7fffb6907de0) at /home/e/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302
#18 0x00007f30ab6d0a43 in QCoreApplication::notifyInternal (this=0x7fffb690acd0, receiver=0x18d26d0, event=0x7fffb6907de0) at kernel/qcoreapplication.cpp:606
#19 0x00007f30ab6d3fbf in QCoreApplication::sendEvent (receiver=0x18d26d0, event=0x7fffb6907de0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#20 0x00007f30ab6e72e6 in QObjectPrivate::setParent_helper (this=0x193a2d0, o=0x0) at kernel/qobject.cpp:1880
#21 0x00007f30ab6e4fc5 in ~QObject (this=0x16a3c50) at kernel/qobject.cpp:854
#22 0x00007f30ac342a98 in ~QWidget (this=0x16a3c50) at kernel/qwidget.cpp:1379
#23 0x00007f30ac79c2fc in ~QFrame (this=0x16a3c50) at widgets/qframe.cpp:243
#24 0x00007f30ac841b7b in ~QAbstractScrollArea (this=0x16a3c50) at widgets/qabstractscrollarea.cpp:497
#25 0x00007f30ac8473d4 in ~QScrollArea (this=0x16a3c50) at widgets/qscrollarea.cpp:176
#26 0x00007f30ad3919bc in ~Private (this=0x190b100) at /home/e/kde/src/KDE/kdelibs/kdeui/paged/kpagewidgetmodel.cpp:40
#27 0x00007f30ad38faff in ~KPageWidgetItem (this=0x18eda30) at /home/e/kde/src/KDE/kdelibs/kdeui/paged/kpagewidgetmodel.cpp:84
#28 0x00007f30ad38ff1b in ~PageItem (this=0x16baf30) at /home/e/kde/src/KDE/kdelibs/kdeui/paged/kpagewidgetmodel.cpp:174
#29 0x00007f30ad390fba in KPageWidgetModel::removePage (this=0x16e03b0, item=0x18eda30) at /home/e/kde/src/KDE/kdelibs/kdeui/paged/kpagewidgetmodel.cpp:481
#30 0x00007f30ad38f272 in KPageWidget::removePage (this=0x16df830, item=0x18eda30) at /home/e/kde/src/KDE/kdelibs/kdeui/paged/kpagewidget.cpp:113
#31 0x00007f30add5e1bf in ModuleView::closeModules (this=0x169f610) at /home/e/kde/src/KDE/kdebase/workspace/systemsettings/core/ModuleView.cpp:233
#32 0x00007f309e6f37c2 in IconMode::backToOverview (this=0x187a980) at /home/e/kde/src/KDE/kdebase/workspace/systemsettings/icons/IconMode.cpp:151
#33 0x00007f309e6f3d90 in IconMode::qt_metacall (this=0x187a980, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7fffb69081e0)
    at /home/e/kde/.build/kdebase/workspace/systemsettings/icons/IconMode.moc:76
#34 0x00007f30ab6e9f47 in QMetaObject::activate (sender=0x169f610, from_signal_index=28, to_signal_index=28, argv=0x0) at kernel/qobject.cpp:3117
#35 0x00007f30ab6ea213 in QMetaObject::activate (sender=0x169f610, m=0x7f30adf715c0, local_signal_index=1, argv=0x0) at kernel/qobject.cpp:3194
#36 0x00007f30add5eaa3 in ModuleView::closeRequest (this=0x169f610) at /home/e/kde/.build/kdebase/workspace/systemsettings/core/ModuleView.moc:112
#37 0x00007f30add5e6bf in ModuleView::keyPressEvent (this=0x169f610, event=0x7fffb6908b50) at /home/e/kde/src/KDE/kdebase/workspace/systemsettings/core/ModuleView.cpp:312
#38 0x00007f30ac353426 in QWidget::event (this=0x169f610, event=0x7fffb6908b50) at kernel/qwidget.cpp:7556
#39 0x00007f30ac2f70b2 in QApplicationPrivate::notify_helper (this=0x15b0530, receiver=0x169f610, e=0x7fffb6908b50) at kernel/qapplication.cpp:4057
#40 0x00007f30ac2f5732 in QApplication::notify (this=0x7fffb690acd0, receiver=0x169f610, e=0x7fffb6908b50) at kernel/qapplication.cpp:3663
#41 0x00007f30ad34ef53 in KApplication::notify (this=0x7fffb690acd0, receiver=0x15c6e10, event=0x7fffb6908b50) at /home/e/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302
#42 0x00007f30ab6d0a43 in QCoreApplication::notifyInternal (this=0x7fffb690acd0, receiver=0x15c6e10, event=0x7fffb6908b50) at kernel/qcoreapplication.cpp:606
#43 0x00007f30ac2f7f09 in QCoreApplication::sendSpontaneousEvent (receiver=0x15c6e10, event=0x7fffb6908b50) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:216
#44 0x00007f30ac2f73ab in qt_sendSpontaneousEvent (receiver=0x15c6e10, event=0x7fffb6908b50) at kernel/qapplication.cpp:4959
#45 0x00007f30ac3a330f in QKeyMapper::sendKeyEvent (keyWidget=0x15c6e10, grab=false, type=QEvent::KeyPress, code=16777216, modifiers={i = 0}, text=@0x7fffb6909010, autorepeat=false, count=1, 
    nativeScanCode=9, nativeVirtualKey=65307, nativeModifiers=0) at kernel/qkeymapper_x11.cpp:1675
#46 0x00007f30ac3a305f in QKeyMapperPrivate::translateKeyEvent (this=0x15f10f0, keyWidget=0x15c6e10, event=0x7fffb690a870, grab=false) at kernel/qkeymapper_x11.cpp:1645
#47 0x00007f30ac36f280 in QApplication::x11ProcessEvent (this=0x7fffb690acd0, event=0x7fffb690a870) at kernel/qapplication_x11.cpp:3459
#48 0x00007f30ac3a37b6 in x11EventSourceDispatch (s=0x15b45e0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#49 0x00007f30a7d574ae in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#50 0x00007f30a7d5abf8 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#51 0x00007f30a7d5ad6c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#52 0x00007f30ab703ab9 in QEventDispatcherGlib::processEvents (this=0x1562920, flags={i = 36}) at kernel/qeventdispatcher_glib.cpp:324
#53 0x00007f30ac3a3d50 in QGuiEventDispatcherGlib::processEvents (this=0x1562920, flags={i = 36}) at kernel/qguieventdispatcher_glib.cpp:202
#54 0x00007f30ab6ce44c in QEventLoop::processEvents (this=0x7fffb690ac30, flags={i = 36}) at kernel/qeventloop.cpp:149
#55 0x00007f30ab6ce587 in QEventLoop::exec (this=0x7fffb690ac30, flags={i = 0}) at kernel/qeventloop.cpp:196
#56 0x00007f30ab6d1108 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:888
#57 0x00007f30ac2f4f98 in QApplication::exec () at kernel/qapplication.cpp:3526
#58 0x000000000040fb16 in main (argc=5, argv=0x7fffb690af88) at /home/e/kde/src/KDE/kdebase/workspace/systemsettings/app/main.cpp:51
Comment 1 Dario Andres 2009-06-09 01:51:47 UTC
Here using:

Qt: 4.5.1 (qt-copy  971295)
KDE: 4.2.90 (KDE 4.2.90 (KDE 4.3 Beta2))
kdelibs svn rev. 978201 / kdebase svn rev. 978202
on ArchLinux i686 - Kernel 2.6.29.4

I can confirm this crash. You need to write "deja" and then click Escape quickly before the list is filtered. (probably a text edit search widget slot is trying to access the dying list, or something similar)
Comment 2 Craig Drummond 2009-07-19 19:52:37 UTC
SVN commit 999371 by craig:

Dont place filter widget within a toolbar. It appears as if when a
lineedit (QLineEdit, KLineEdit, etc.) is in the toolbar and has focus
when it is desroyed, then a crash happens - removing it from the toolbar
and things are OK.

CCBUG: 195682


 M  +6 -9      KCmFontInst.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=999371
Comment 3 Craig Drummond 2009-07-19 19:53:01 UTC
SVN commit 999372 by craig:

Dont place filter widget within a toolbar. It appears as if when a
lineedit (QLineEdit, KLineEdit, etc.) is in the toolbar and has focus
when it is desroyed, then a crash happens - removing it from the toolbar
and things are OK.

BUG: 195682


 M  +6 -9      KCmFontInst.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=999372
Comment 4 Ben Cooksley 2011-02-13 06:40:20 UTC
*** Bug 258050 has been marked as a duplicate of this bug. ***