KMainWindow unit test crash, caused by recent Oxygen commit

Hugo Pereira Da Costa hugo at oxygen-icons.org
Mon Jun 27 16:41:39 BST 2011


I could reproduce the issue with both kxmlgui_unittest and 
kmainwindow_unittest
Oxygen was the curlpit indeed. (there was a real flaw in the code, 
thanks to Thomas for pointing it out).

Should be fixed with
http://commits.kde.org/kde-workspace/68dbf302f2cb7bb011bdbd52e8dda04902a1dae5

Sorry for the trouble,

Hugo



On 06/27/2011 04:46 PM, Frank Reininghaus wrote:
> Hi,
>
> I'm seeing a failure in kmainwindow_unittest:
>
> http://my.cdash.org/testDetails.php?test=6516885&build=203056
>
> The test crashes with the backtrace below. Sometimes, also kxmlgui_unittest
> crashes with that bt, but that's not 100% reproducible.
>
> It seems that the failure is due to commit 2bc71422 in kde-workspace:
>
> https://projects.kde.org/projects/kde/kdebase/kde-
> workspace/repository/revisions/2bc71422e031879d218888b1b65fe774d23f5dfd
>
> I don't know KMainWindow and KXmlGui well, so I can't say if they do anything
> wrong here, if the tests need to be fixed, or if Oxygen really is the culprit.
>
> Best regards,
> Frank
>
> P.S.: The backtrace:
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffff6664cea in QObject::installEventFilter (this=0x7fffffffcc80,
> obj=0x6af770) at kernel/qobject.cpp:2061
> 2061        if (d->threadData != obj->d_func()->threadData) {
> (gdb) bt
> #0  0x00007ffff6664cea in QObject::installEventFilter (this=0x7fffffffcc80,
> obj=0x6af770) at kernel/qobject.cpp:2061
> #1  0x00007fffef61045a in Oxygen::SplitterFactory::registerWidget
> (this=0x696ce0, widget=0x7fffffffcc80)
>      at /home/kde-devel/kde/src/KDE/kde-
> workspace/kstyles/oxygen/oxygensplitterproxy.cpp:59
> #2  0x00007fffef6124d6 in Oxygen::Style::polish (this=0x665b60,
> widget=0x7fffffffcc80) at /home/kde-devel/kde/src/KDE/kde-
> workspace/kstyles/oxygen/oxygenstyle.cpp:211
> #3  0x00007ffff5550fed in QWidget::event (this=0x7fffffffcc80,
> event=0x7fffffffcb00) at kernel/qwidget.cpp:8364
> #4  0x00007ffff5a2b87e in QMainWindow::event (this=0x7fffffffcc80,
> event=0x7fffffffcb00) at widgets/qmainwindow.cpp:1480
> #5  0x00007ffff79da24f in KMainWindow::event (this=0x7fffffffcc80,
> ev=0x7fffffffcb00) at /home/kde-
> devel/kde/src/KDE/kdelibs/kdeui/widgets/kmainwindow.cpp:1100
> #6  0x00007ffff54ea03e in QApplicationPrivate::notify_helper (this=0x62c9f0,
> receiver=0x7fffffffcc80, e=0x7fffffffcb00) at kernel/qapplication.cpp:4477
> #7  0x00007ffff54e9d3e in QApplication::notify (this=0x7fffffffdab0,
> receiver=0x7fffffffcc80, e=0x7fffffffcb00) at kernel/qapplication.cpp:4442
> #8  0x00007ffff664aa33 in QCoreApplication::notifyInternal
> (this=0x7fffffffdab0, receiver=0x7fffffffcc80, event=0x7fffffffcb00) at
> kernel/qcoreapplication.cpp:787
> #9  0x00007ffff664e765 in QCoreApplication::sendEvent
> (receiver=0x7fffffffcc80, event=0x7fffffffcb00) at
> ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
> #10 0x00007ffff5552a4c in QWidget::ensurePolished (this=0x7fffffffcc80) at
> kernel/qwidget.cpp:9615
> #11 0x00007ffff554f3df in QWidget::setVisible (this=0x7fffffffcc80,
> visible=true) at kernel/qwidget.cpp:7630
> #12 0x00000000004087c2 in QWidget::show (this=0x7fffffffcc80) at /home/kde-
> devel/qt/include/QtGui/../../src/gui/kernel/qwidget.h:487
> #13 0x000000000040743a in KMainWindow_UnitTest::testNameWithSpecialChars
> (this=0x7fffffffdaa0) at /home/kde-
> devel/kde/src/KDE/kdelibs/kdeui/tests/kmainwindow_unittest.cpp:81
> #14 0x00000000004064c9 in KMainWindow_UnitTest::qt_metacall
> (this=0x7fffffffdaa0, _c=QMetaObject::InvokeMetaMethod, _id=2,
> _a=0x7fffffffce30)
>      at /home/kde-
> devel/kde/build/KDE/kdelibs/kdeui/tests/kmainwindow_unittest.moc:86
> #15 0x00007ffff6652ba7 in QMetaObject::metacall (object=0x7fffffffdaa0,
> cl=QMetaObject::InvokeMetaMethod, idx=6, argv=0x7fffffffce30) at
> kernel/qmetaobject.cpp:237
> #16 0x00007ffff6655836 in QMetaMethod::invoke (this=0x7fffffffd310,
> object=0x7fffffffdaa0, connectionType=Qt::DirectConnection, returnValue=...,
> val0=..., val1=..., val2=...,
>      val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at
> kernel/qmetaobject.cpp:1597
> #17 0x00007ffff6654ade in QMetaObject::invokeMethod (obj=0x7fffffffdaa0,
> member=0x7242b0 "testNameWithSpecialChars", type=Qt::DirectConnection,
> ret=..., val0=..., val1=..., val2=
>      ..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...)
> at kernel/qmetaobject.cpp:1151
> #18 0x00007ffff7439544 in QMetaObject::invokeMethod (obj=0x7fffffffdaa0,
> member=0x7242b0 "testNameWithSpecialChars", type=Qt::DirectConnection,
> val0=..., val1=..., val2=..., val3=
>      ..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at
> ../../include/QtCore/../../src/corelib/kernel/qobjectdefs.h:410
> #19 0x00007ffff74372ec in QTest::qInvokeTestMethodDataEntry (slot=0x7242b0
> "testNameWithSpecialChars") at qtestcase.cpp:1277
> #20 0x00007ffff7437879 in QTest::qInvokeTestMethod (slotName=0x40a1b8
> "testNameWithSpecialChars()", data=0x0) at qtestcase.cpp:1385
> #21 0x00007ffff7437f15 in QTest::qInvokeTestMethods
> (testObject=0x7fffffffdaa0) at qtestcase.cpp:1540
> #22 0x00007ffff74383a4 in QTest::qExec (testObject=0x7fffffffdaa0, argc=1,
> argv=0x7fffffffdde8) at qtestcase.cpp:1749
> #23 0x0000000000406c00 in main (argc=1, argv=0x7fffffffdde8) at /home/kde-
> devel/kde/src/KDE/kdelibs/kdeui/tests/kmainwindow_unittest.cpp:30





More information about the kde-core-devel mailing list