Bug 237796

Summary: Crash in Table Data View on application quit
Product: [Applications] KEXI Reporter: Jarosław Staniek <staniek>
Component: TablesAssignee: Jarosław Staniek <staniek>
Status: CLOSED FIXED    
Severity: crash    
Priority: NOR    
Version First Reported In: 2.3 alpha1 (KOffice 2.3 alpha1)   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Jarosław Staniek 2010-05-16 10:18:31 UTC
When non-empty table view(s) ate opened, it's possible to encounter a crash due to QApplication::processEvent() calls from destructor.

Application: Kexi (kexi), signal: Segmentation fault
[KCrash Handler]
#6  0xb6ae1397 in QWidgetPrivate::setWSGeometry () from /usr/lib/libQtGui.so.4
#7  0xb6ae152d in QWidgetPrivate::setWSGeometry () from /usr/lib/libQtGui.so.4
#8  0xb6ae152d in QWidgetPrivate::setWSGeometry () from /usr/lib/libQtGui.so.4
#9  0xb6ae152d in QWidgetPrivate::setWSGeometry () from /usr/lib/libQtGui.so.4
#10 0xb6ae5ea0 in QWidgetPrivate::setGeometry_sys () from /usr/lib/libQtGui.so.4
#11 0xb6aa40b8 in QWidget::setGeometry () from /usr/lib/libQtGui.so.4
#12 0xb6eee7d0 in ?? () from /usr/lib/libQtGui.so.4
#13 0xb6e2be75 in ?? () from /usr/lib/libQtGui.so.4
#14 0xb6e56fc2 in ?? () from /usr/lib/libQtGui.so.4
#15 0xb6e5861d in ?? () from /usr/lib/libQtGui.so.4
#16 0xb6e58d28 in ?? () from /usr/lib/libQtGui.so.4
#17 0xb6a7c4ec in QLayoutPrivate::doResize () from /usr/lib/libQtGui.so.4
#18 0xb6a7c625 in QLayout::activate () from /usr/lib/libQtGui.so.4
#19 0xb6a7dbd8 in QLayout::widgetEvent () from /usr/lib/libQtGui.so.4
#20 0xb6a4e677 in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#21 0xb6a56ab2 in QApplication::notify () from /usr/lib/libQtGui.so.4
#22 0xb79b69ad in KApplication::notify () from /usr/lib/libkdeui.so.5
#23 0xb740905b in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#24 0xb7409ca5 in QCoreApplicationPrivate::sendPostedEvents () from /usr/lib/libQtCore.so.4
#25 0xb7409e9d in QCoreApplication::sendPostedEvents () from /usr/lib/libQtCore.so.4
#26 0xb7434caf in ?? () from /usr/lib/libQtCore.so.4
#27 0xb5e812f9 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#28 0xb5e8487b in ?? () from /usr/lib/libglib-2.0.so.0
#29 0xb5e849f8 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#30 0xb74348f8 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#31 0xb6aeed45 in ?? () from /usr/lib/libQtGui.so.4
#32 0xb740a092 in QCoreApplication::processEvents () from /usr/lib/libQtCore.so.4
#33 0xb5499574 in KexiTableViewData::clearInternal (this=0x9b1ac48) at /home/jarek/kde4/sources/trunk/koffice/kexi/widget/tableview/kexitableviewdata.cpp:757
#34 0xb549a5b2 in ~KexiTableViewData (this=0x9b1ac48) at /home/jarek/kde4/sources/trunk/koffice/kexi/widget/tableview/kexitableviewdata.cpp:325
#35 0xb233b424 in ~KexiFormScrollView (this=0x8557500) at /home/jarek/kde4/sources/trunk/koffice/kexi/plugins/forms/kexiformscrollview.cpp:64
#36 0xb741832f in QObjectPrivate::deleteChildren () from /usr/lib/libQtCore.so.4
#37 0xb6aa06ab in QWidget::~QWidget () from /usr/lib/libQtGui.so.4
#38 0xb5ca172f in ~KexiView (this=0x8523240) at /home/jarek/kde4/sources/trunk/koffice/kexi/core/KexiView.cpp:251
#39 0xb5bd8bab in ~KexiDataAwareView (this=0x8523240) at /home/jarek/kde4/sources/trunk/koffice/kexi/widget/kexidataawareview.cpp:44
#40 0xb234df42 in ~KexiFormView (this=0x8523240) at /home/jarek/kde4/sources/trunk/koffice/kexi/plugins/forms/kexiformview.cpp:220
#41 0xb741832f in QObjectPrivate::deleteChildren () from /usr/lib/libQtCore.so.4
#42 0xb6aa06ab in QWidget::~QWidget () from /usr/lib/libQtGui.so.4
#43 0xb6e373e1 in QFrame::~QFrame () from /usr/lib/libQtGui.so.4
#44 0xb6ea7875 in QStackedWidget::~QStackedWidget () from /usr/lib/libQtGui.so.4
#45 0xb741832f in QObjectPrivate::deleteChildren () from /usr/lib/libQtCore.so.4
#46 0xb6aa06ab in QWidget::~QWidget () from /usr/lib/libQtGui.so.4
#47 0xb5c9e4e1 in ~KexiWindow (this=0x84a6b38) at /home/jarek/kde4/sources/trunk/koffice/kexi/core/KexiWindow.cpp:190
#48 0xb741832f in QObjectPrivate::deleteChildren () from /usr/lib/libQtCore.so.4
#49 0xb6aa06ab in QWidget::~QWidget () from /usr/lib/libQtGui.so.4
#50 0xb7bb2bde in ~KexiWindowContainer (this=0x824f318) at /home/jarek/kde4/sources/trunk/koffice/kexi/main/KexiMainWindow_p.h:79
#51 0xb7b9fef9 in KexiMainWindow::closeWindow (this=0x81beb48, window=0x84a6b38, layoutTaskBar=true, doNotSaveChanges=false)
    at /home/jarek/kde4/sources/trunk/koffice/kexi/main/KexiMainWindow.cpp:3842
#52 0xb7ba005e in KexiMainWindow::closeWindow (this=0x81beb48, window=0x84a6b38) at /home/jarek/kde4/sources/trunk/koffice/kexi/main/KexiMainWindow.cpp:3677
#53 0xb7ba111e in KexiMainWindow::closeProject (this=0x81beb48) at /home/jarek/kde4/sources/trunk/koffice/kexi/main/KexiMainWindow.cpp:1894
#54 0xb7ba135e in KexiMainWindow::queryClose (this=0x81beb48) at /home/jarek/kde4/sources/trunk/koffice/kexi/main/KexiMainWindow.cpp:2379
#55 0xb7ba13de in KexiMainWidget::queryClose (this=0x81feb48) at /home/jarek/kde4/sources/trunk/koffice/kexi/main/KexiMainWindow_p.h:496
#56 0xb7a9b6b0 in KMainWindow::closeEvent () from /usr/lib/libkdeui.so.5
#57 0xb7b95cd5 in KexiMainWindow::closeEvent (this=0x81beb48, ev=0xbfc67db4) at /home/jarek/kde4/sources/trunk/koffice/kexi/main/KexiMainWindow.cpp:2397
#58 0xb6aa4e9a in QWidget::event () from /usr/lib/libQtGui.so.4
#59 0xb6a4e6ac in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#60 0xb6a56ab2 in QApplication::notify () from /usr/lib/libQtGui.so.4
#61 0xb79b69ad in KApplication::notify () from /usr/lib/libkdeui.so.5
#62 0xb740905b in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#63 0xb6a5981e in QCoreApplication::sendSpontaneousEvent () from /usr/lib/libQtGui.so.4
#64 0xb6aaa597 in QWidgetPrivate::close_helper () from /usr/lib/libQtGui.so.4
#65 0xb6ab250b in QApplication::x11ClientMessage () from /usr/lib/libQtGui.so.4
#66 0xb6ac4d92 in QApplication::x11ProcessEvent () from /usr/lib/libQtGui.so.4
#67 0xb6aef67c in ?? () from /usr/lib/libQtGui.so.4
#68 0xb5e812f9 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#69 0xb5e8487b in ?? () from /usr/lib/libglib-2.0.so.0
#70 0xb5e849f8 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#71 0xb74348f8 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#72 0xb6aeed45 in ?? () from /usr/lib/libQtGui.so.4
#73 0xb740769a in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#74 0xb7407ae2 in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#75 0xb7409f69 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#76 0xb6a4e527 in QApplication::exec () from /usr/lib/libQtGui.so.4
#77 0x080487f1 in main (argc=1, argv=0x3) at /home/jarek/kde4/sources/trunk/koffice/kexi/main.cpp:34
Comment 1 Jarosław Staniek 2010-05-16 10:24:53 UTC
SVN commit 1127296 by staniek:

Table View
*When non-empty table view(s) ate opened, it's possible to encounter a crash due to QApplication::processEvent() calls from destructor. Avoid that by checking qApp->closingDown().
BUG:237796



 M  +10 -2     kexitableviewdata.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1127296
Comment 2 Jarosław Staniek 2010-05-16 10:27:23 UTC
SVN commit 1127297 by staniek:

Table View
*When non-empty table view(s) are opened, it's possible to encounter a crash due to QApplication::processEvent() calls from destructor. Avoid that by checking qApp->closingDown().
CCBUG:237796

merge of trunk r1127296
reviewed on IRC


 MM +10 -2     kexitableviewdata.cpp  


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