Bug 290238

Summary: Adding a window-specific override crashes
Product: [Plasma] Oxygen Reporter: Eike Hein <hein>
Component: win decoAssignee: Hugo Pereira Da Costa <hugo.pereira.da.costa>
Status: RESOLVED DUPLICATE    
Severity: crash CC: hugo.pereira.da.costa
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Eike Hein 2011-12-31 08:31:18 UTC
Application: kcmshell4 ()
KDE Platform Version: 4.7.95 (4.8 RC1 (4.7.95)
Qt Version: 4.8.0
Operating System: Linux 3.1.6-1.fc16.x86_64 x86_64
Distribution: "Fedora release 16 (Verne)"

-- Information about the crash:
- What I was doing when the application crashed:

Clicked "Add" in window-specific overrides. Config opened from a window menu.

The crash can be reproduced every time.

-- Backtrace:
Application: KDE Control Module (kcmshell4), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
82	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7f7b1d06d840 (LWP 1943))]

Thread 2 (Thread 0x7f7b0de3b700 (LWP 1944)):
#0  0x0000003ffc8e8933 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f7b1e66f3bf in QProcessManager::run (this=0x7f7b1e9e7040) at io/qprocess_unix.cpp:244
#2  0x00007f7b1e594b6b in QThreadPrivate::start (arg=0x7f7b1e9e7040) at thread/qthread_unix.cpp:298
#3  0x0000003ffcc07d90 in start_thread (arg=0x7f7b0de3b700) at pthread_create.c:309
#4  0x0000003ffc8ef48d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7f7b1d06d840 (LWP 1943)):
[KCrash Handler]
#6  0x0000003ffc836285 in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#7  0x0000003ffc837b9b in __GI_abort () at abort.c:91
#8  0x00007f7b1e58a4b4 in qt_message_output (msgType=<optimized out>, buf=<optimized out>) at global/qglobal.cpp:2252
#9  0x00007f7b1e58a66f in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7f7b1e732218 "QSharedPointer: pointer %p already has reference counting", ap=0x7fffaa010368) at global/qglobal.cpp:2298
#10 0x00007f7b1e58a814 in qFatal (msg=<optimized out>) at global/qglobal.cpp:2481
#11 0x00007f7b1e5d604f in QtSharedPointer::ExternalRefCountData::setQObjectShared (this=0x2530090, obj=<optimized out>) at tools/qsharedpointer.cpp:1242
#12 0x00007f7b079d1bb9 in internalFinishConstruction (ptr=0x256d990, this=<synthetic pointer>) at /usr/include/QtCore/qsharedpointer_impl.h:381
#13 internalConstruct (ptr=0x256d990, this=<synthetic pointer>) at /usr/include/QtCore/qsharedpointer_impl.h:357
#14 ExternalRefCount (this=<synthetic pointer>, ptr=0x256d990) at /usr/include/QtCore/qsharedpointer_impl.h:391
#15 QSharedPointer (ptr=0x256d990, this=<synthetic pointer>) at /usr/include/QtCore/qsharedpointer_impl.h:473
#16 Oxygen::ExceptionListWidget::add (this=0x24ae4c0) at /usr/src/debug/kde-workspace-4.7.95/kwin/clients/oxygen/config/oxygenexceptionlistwidget.cpp:116
#17 0x00007f7b1e6a5cd1 in QMetaObject::activate (sender=0x24aecb0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffaa0106f0) at kernel/qobject.cpp:3547
#18 0x00007f7b1e0ae1b2 in QAbstractButton::clicked (this=<optimized out>, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:220
#19 0x00007f7b1ddf056e in QAbstractButtonPrivate::emitClicked (this=0x24afcd0) at widgets/qabstractbutton.cpp:546
#20 0x00007f7b1ddf18ab in QAbstractButtonPrivate::click (this=0x24afcd0) at widgets/qabstractbutton.cpp:539
#21 0x00007f7b1ddf1b1c in QAbstractButton::mouseReleaseEvent (this=0x24aecb0, e=0x7fffaa010fc0) at widgets/qabstractbutton.cpp:1121
#22 0x00007f7b1da7b02a in QWidget::event (this=0x24aecb0, event=0x7fffaa010fc0) at kernel/qwidget.cpp:8361
#23 0x00007f7b1da2a994 in notify_helper (e=0x7fffaa010fc0, receiver=0x24aecb0, this=0x1b4dc90) at kernel/qapplication.cpp:4550
#24 QApplicationPrivate::notify_helper (this=0x1b4dc90, receiver=0x24aecb0, e=0x7fffaa010fc0) at kernel/qapplication.cpp:4522
#25 0x00007f7b1da300e3 in QApplication::notify (this=<optimized out>, receiver=0x24aecb0, e=0x7fffaa010fc0) at kernel/qapplication.cpp:4093
#26 0x000000300b450e26 in KApplication::notify (this=0x7fffaa0135d0, receiver=0x24aecb0, event=0x7fffaa010fc0) at /usr/src/debug/kdelibs-4.7.95/kdeui/kernel/kapplication.cpp:311
#27 0x00007f7b1e69203c in QCoreApplication::notifyInternal (this=0x7fffaa0135d0, receiver=0x24aecb0, event=0x7fffaa010fc0) at kernel/qcoreapplication.cpp:876
#28 0x00007f7b1da2b962 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:231
#29 QApplicationPrivate::sendMouseEvent (receiver=0x24aecb0, event=0x7fffaa010fc0, alienWidget=0x24aecb0, nativeWidget=0x34918a0, buttonDown=0x24aecb0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3161
#30 0x00007f7b1daa72e5 in QETWidget::translateMouseEvent (this=0x34918a0, event=<optimized out>) at kernel/qapplication_x11.cpp:4521
#31 0x00007f7b1daa61aa in QApplication::x11ProcessEvent (this=0x7fffaa0135d0, event=0x7fffaa011880) at kernel/qapplication_x11.cpp:3641
#32 0x00007f7b1dacd92c in x11EventSourceDispatch (s=0x1b51d20, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:148
#33 0x0000003ffe844a7d in g_main_dispatch (context=0x1b51200) at gmain.c:2425
#34 g_main_context_dispatch (context=0x1b51200) at gmain.c:2995
#35 0x0000003ffe845278 in g_main_context_iterate (context=0x1b51200, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3073
#36 0x0000003ffe84544c in g_main_context_iteration (context=0x1b51200, may_block=1) at gmain.c:3136
#37 0x00007f7b1e6c0d4f in QEventDispatcherGlib::processEvents (this=0x1b29770, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#38 0x00007f7b1dacd61e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:207
#39 0x00007f7b1e691172 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#40 0x00007f7b1e6913c7 in QEventLoop::exec (this=0x7fffaa011c50, flags=...) at kernel/qeventloop.cpp:204
#41 0x00007f7b1def0826 in QDialog::exec (this=0x34918a0) at dialogs/qdialog.cpp:552
#42 0x00007f7b1078144f in KWin::KWinDecorationModule::slotConfigureDecoration (this=0x1eee820) at /usr/src/debug/kde-workspace-4.7.95/kwin/kcmkwin/kwindecoration/kwindecoration.cpp:320
#43 0x00007f7b1e6a5cd1 in QMetaObject::activate (sender=0x1f1d7c0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffaa011fc0) at kernel/qobject.cpp:3547
#44 0x00007f7b1e0ae1b2 in QAbstractButton::clicked (this=<optimized out>, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:220
#45 0x00007f7b1ddf056e in QAbstractButtonPrivate::emitClicked (this=0x1f1dc30) at widgets/qabstractbutton.cpp:546
#46 0x00007f7b1ddf18ab in QAbstractButtonPrivate::click (this=0x1f1dc30) at widgets/qabstractbutton.cpp:539
#47 0x00007f7b1ddf1b1c in QAbstractButton::mouseReleaseEvent (this=0x1f1d7c0, e=0x7fffaa012890) at widgets/qabstractbutton.cpp:1121
#48 0x00007f7b1da7b02a in QWidget::event (this=0x1f1d7c0, event=0x7fffaa012890) at kernel/qwidget.cpp:8361
#49 0x00007f7b1da2a994 in notify_helper (e=0x7fffaa012890, receiver=0x1f1d7c0, this=0x1b4dc90) at kernel/qapplication.cpp:4550
#50 QApplicationPrivate::notify_helper (this=0x1b4dc90, receiver=0x1f1d7c0, e=0x7fffaa012890) at kernel/qapplication.cpp:4522
#51 0x00007f7b1da300e3 in QApplication::notify (this=<optimized out>, receiver=0x1f1d7c0, e=0x7fffaa012890) at kernel/qapplication.cpp:4093
#52 0x000000300b450e26 in KApplication::notify (this=0x7fffaa0135d0, receiver=0x1f1d7c0, event=0x7fffaa012890) at /usr/src/debug/kdelibs-4.7.95/kdeui/kernel/kapplication.cpp:311
#53 0x00007f7b1e69203c in QCoreApplication::notifyInternal (this=0x7fffaa0135d0, receiver=0x1f1d7c0, event=0x7fffaa012890) at kernel/qcoreapplication.cpp:876
#54 0x00007f7b1da2b962 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../src/corelib/kernel/qcoreapplication.h:231
#55 QApplicationPrivate::sendMouseEvent (receiver=0x1f1d7c0, event=0x7fffaa012890, alienWidget=0x1f1d7c0, nativeWidget=0x1cff7e0, buttonDown=0x1f1d7c0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3161
#56 0x00007f7b1daa72e5 in QETWidget::translateMouseEvent (this=0x1cff7e0, event=<optimized out>) at kernel/qapplication_x11.cpp:4521
#57 0x00007f7b1daa61aa in QApplication::x11ProcessEvent (this=0x7fffaa0135d0, event=0x7fffaa013150) at kernel/qapplication_x11.cpp:3641
#58 0x00007f7b1dacd92c in x11EventSourceDispatch (s=0x1b51d20, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:148
#59 0x0000003ffe844a7d in g_main_dispatch (context=0x1b51200) at gmain.c:2425
#60 g_main_context_dispatch (context=0x1b51200) at gmain.c:2995
#61 0x0000003ffe845278 in g_main_context_iterate (context=0x1b51200, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3073
#62 0x0000003ffe84544c in g_main_context_iteration (context=0x1b51200, may_block=1) at gmain.c:3136
#63 0x00007f7b1e6c0d4f in QEventDispatcherGlib::processEvents (this=0x1b29770, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#64 0x00007f7b1dacd61e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:207
#65 0x00007f7b1e691172 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#66 0x00007f7b1e6913c7 in QEventLoop::exec (this=0x7fffaa013520, flags=...) at kernel/qeventloop.cpp:204
#67 0x00007f7b1def0826 in QDialog::exec (this=0x1cff7e0) at dialogs/qdialog.cpp:552
#68 0x0000003005007c3c in kdemain () from /usr/lib64/libkdeinit4_kcmshell4.so
#69 0x0000003ffc82169d in __libc_start_main (main=0x4006c0, argc=12, ubp_av=0x7fffaa013de8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffaa013dd8) at libc-start.c:226
#70 0x00000000004006f1 in _start ()

Possible duplicates by query: bug 288626, bug 277925.

Reported using DrKonqi
Comment 1 Hugo Pereira Da Costa 2011-12-31 11:02:03 UTC
Can't reproduce with Qt 4.7
It is a Qt4.8.0 bug, (a QFatal thrown by Qt when adding a QSharedPointer around a widget which is already guarded elsewhere), for which we could add a workaround, but I'd rather have Qt4.8 fix it.
There have been several similar bug already, happening elsewhere in the code. (see duplicate).

*** This bug has been marked as a duplicate of bug 277925 ***