Bug 308299

Summary: Kwin crashes when clicking "No Border"
Product: [Plasma] kwin Reporter: jbryslaw <jbryslaw>
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: twanderson71
Priority: NOR    
Version: 4.9.2   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description jbryslaw 2012-10-12 14:53:20 UTC
Application: kwin (4.9.2)
KDE Platform Version: 4.9.2
Qt Version: 4.8.2
Operating System: Linux 3.2.0-31-generic x86_64
Distribution: Ubuntu 12.04.1 LTS

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

Right clicked Titlebar, then clicked "No Border". Kwin crashes and restarts ( the border is still there).

- Custom settings of the application:
This happens for every application managed by Kwin.

The crash can be reproduced every time.

-- Backtrace:
Application: KWin (kwin), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fa5e98e3780 (LWP 5505))]

Thread 4 (Thread 0x7fa5ce14a700 (LWP 5508)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007fa5e5feb222 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007fa5e5feb259 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007fa5dde08e9a in start_thread (arg=0x7fa5ce14a700) at pthread_create.c:308
#4  0x00007fa5e90f9dbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fa5c7fff700 (LWP 5513)):
#0  0x00007fa5e90f3123 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007fa5e4d51846 in qt_safe_select (nfds=20, fdread=0x7fa5bc000ac8, fdwrite=0x7fa5bc000d60, fdexcept=0x7fa5bc000ff8, orig_timeout=<optimized out>) at kernel/qcore_unix.cpp:83
#2  0x00007fa5e4d56c92 in QEventDispatcherUNIXPrivate::doSelect (this=0x7fa5bc000910, flags=..., timeout=0x0) at kernel/qeventdispatcher_unix.cpp:223
#3  0x00007fa5e4d57183 in QEventDispatcherUNIX::processEvents (this=0x7fa5bc0008f0, flags=...) at kernel/qeventdispatcher_unix.cpp:926
#4  0x00007fa5e4d23e42 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007fa5e4d24097 in QEventLoop::exec (this=0x7fa5c7ffedd0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007fa5e4c23057 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00007fa5e4d03b4f in QInotifyFileSystemWatcherEngine::run (this=0x283a510) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007fa5e4c2607b in QThreadPrivate::start (arg=0x283a510) at thread/qthread_unix.cpp:307
#9  0x00007fa5dde08e9a in start_thread (arg=0x7fa5c7fff700) at pthread_create.c:308
#10 0x00007fa5e90f9dbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fa5ceb60700 (LWP 7867)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:215
#1  0x00007fa5e4c264ef in wait (time=30000, this=0x23e7710) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x23f83f8, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007fa5e4c1966f in QThreadPoolThread::run (this=0x23f87d0) at concurrent/qthreadpool.cpp:141
#4  0x00007fa5e4c2607b in QThreadPrivate::start (arg=0x23f87d0) at thread/qthread_unix.cpp:307
#5  0x00007fa5dde08e9a in start_thread (arg=0x7fa5ceb60700) at pthread_create.c:308
#6  0x00007fa5e90f9dbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fa5e98e3780 (LWP 5505)):
[KCrash Handler]
#6  0x00007fa5e604679b in QScriptValue::call(QScriptValue const&, QList<QScriptValue> const&) () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#7  0x00007fa5e80af145 in QDeclarativeQtScriptExpression::eval (this=0x2d123a8, secondaryScope=<optimized out>, isUndefined=0x0) at qml/qdeclarativeexpression.cpp:518
#8  0x00007fa5e80af4b1 in QDeclarativeQtScriptExpression::scriptValue (this=0x2d123a8, secondaryScope=<optimized out>, isUndefined=<optimized out>) at qml/qdeclarativeexpression.cpp:470
#9  0x00007fa5e80af7b9 in QDeclarativeExpressionPrivate::scriptValue (this=0x2d12320, secondaryScope=0x28605f0, isUndefined=0x0) at qml/qdeclarativeexpression.cpp:653
#10 0x00007fa5e80af952 in QDeclarativeExpressionPrivate::value (this=0x2d12320, secondaryScope=0x28605f0, isUndefined=0x0) at qml/qdeclarativeexpression.cpp:667
#11 0x00007fa5e80e8179 in QDeclarativeBoundSignal::qt_metacall (this=0x2d266c0, c=<optimized out>, id=<optimized out>, a=0x7fffb8b31ea0) at qml/qdeclarativeboundsignal.cpp:186
#12 0x00007fa5e4d39969 in QMetaObject::activate (sender=0x2c97660, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffb8b31ea0) at kernel/qobject.cpp:3566
#13 0x00007fa5e81a24f2 in QDeclarativeMouseArea::pressed (this=<optimized out>, _t1=0x7fffb8b31ee0) at .moc/release-shared/moc_qdeclarativemousearea_p.cpp:502
#14 0x00007fa5e804ded3 in QDeclarativeMouseArea::setPressed (this=0x2c97660, p=<optimized out>) at graphicsitems/qdeclarativemousearea.cpp:926
#15 0x00007fa5e804ebd5 in QDeclarativeMouseArea::mousePressEvent (this=0x2c97660, event=0x7fffb8b32950) at graphicsitems/qdeclarativemousearea.cpp:498
#16 0x00007fa5e468ca97 in QGraphicsItem::sceneEvent (this=0x2c97670, event=0x7fffb8b32950) at graphicsview/qgraphicsitem.cpp:6738
#17 0x00007fa5e8040dc2 in QDeclarativeItem::sceneEvent (this=0x2c97660, event=0x7fffb8b32950) at graphicsitems/qdeclarativeitem.cpp:3047
#18 0x00007fa5e804d5f9 in QDeclarativeMouseArea::sceneEvent (this=0x2c97660, event=0x7fffb8b32950) at graphicsitems/qdeclarativemousearea.cpp:682
#19 0x00007fa5e46b540a in QGraphicsScenePrivate::sendMouseEvent (this=0x2c30db0, mouseEvent=0x7fffb8b32950) at graphicsview/qgraphicsscene.cpp:1295
#20 0x00007fa5e46ba1f4 in QGraphicsScenePrivate::mousePressEventHandler (this=0x2c30db0, mouseEvent=0x7fffb8b32950) at graphicsview/qgraphicsscene.cpp:1422
#21 0x00007fa5e46ba74f in QGraphicsScene::mousePressEvent (this=<optimized out>, mouseEvent=0x7fffb8b32950) at graphicsview/qgraphicsscene.cpp:4074
#22 0x00007fa5e46c3f7f in QGraphicsScene::event (this=0x2c037c0, event=0x7fffb8b32950) at graphicsview/qgraphicsscene.cpp:3455
#23 0x00007fa5e40a67b4 in notify_helper (e=0x7fffb8b32950, receiver=0x2c037c0, this=0x22e3720) at kernel/qapplication.cpp:4556
#24 QApplicationPrivate::notify_helper (this=0x22e3720, receiver=0x2c037c0, e=0x7fffb8b32950) at kernel/qapplication.cpp:4528
#25 0x00007fa5e40ab583 in QApplication::notify (this=0x7fffb8b33e90, receiver=0x2c037c0, e=0x7fffb8b32950) at kernel/qapplication.cpp:4417
#26 0x00007fa5e8bd2756 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#27 0x00007fa5e4d2530c in QCoreApplication::notifyInternal (this=0x7fffb8b33e90, receiver=0x2c037c0, event=0x7fffb8b32950) at kernel/qcoreapplication.cpp:915
#28 0x00007fa5e46d97af in QGraphicsView::mousePressEvent (this=0x2d29050, event=0x7fffb8b332e0) at graphicsview/qgraphicsview.cpp:3164
#29 0x00007fa5e40f7299 in QWidget::event (this=0x2d29050, event=0x7fffb8b332e0) at kernel/qwidget.cpp:8367
#30 0x00007fa5e44b7836 in QFrame::event (this=0x2d29050, e=0x7fffb8b332e0) at widgets/qframe.cpp:557
#31 0x00007fa5e46e22eb in QGraphicsView::viewportEvent (this=0x2d29050, event=0x7fffb8b332e0) at graphicsview/qgraphicsview.cpp:2866
#32 0x00007fa5e4d25498 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<optimized out>, receiver=0x302a9b0, event=0x7fffb8b332e0) at kernel/qcoreapplication.cpp:1025
#33 0x00007fa5e40a677f in notify_helper (e=0x7fffb8b332e0, receiver=0x302a9b0, this=0x22e3720) at kernel/qapplication.cpp:4552
#34 QApplicationPrivate::notify_helper (this=0x22e3720, receiver=0x302a9b0, e=0x7fffb8b332e0) at kernel/qapplication.cpp:4528
#35 0x00007fa5e40abf2f in QApplication::notify (this=<optimized out>, receiver=0x302a9b0, e=0x7fffb8b332e0) at kernel/qapplication.cpp:4099
#36 0x00007fa5e8bd2756 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#37 0x00007fa5e4d2530c in QCoreApplication::notifyInternal (this=0x7fffb8b33e90, receiver=0x302a9b0, event=0x7fffb8b332e0) at kernel/qcoreapplication.cpp:915
#38 0x00007fa5e40a7782 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#39 QApplicationPrivate::sendMouseEvent (receiver=0x302a9b0, event=0x7fffb8b332e0, alienWidget=0x0, nativeWidget=0x302a9b0, buttonDown=0x0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3167
#40 0x00007fa5e4126b15 in QETWidget::translateMouseEvent (this=0x302a9b0, event=<optimized out>) at kernel/qapplication_x11.cpp:4617
#41 0x00007fa5e4125ace in QApplication::x11ProcessEvent (this=0x7fffb8b33e90, event=0x7fffb8b33bc0) at kernel/qapplication_x11.cpp:3732
#42 0x00007fa5e414faba in QEventDispatcherX11::processEvents (this=0x228cad0, flags=...) at kernel/qeventdispatcher_x11.cpp:132
#43 0x00007fa5e4d23e42 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#44 0x00007fa5e4d24097 in QEventLoop::exec (this=0x7fffb8b33e10, flags=...) at kernel/qeventloop.cpp:204
#45 0x00007fa5e4d293e7 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#46 0x00007fa5e9428f43 in kdemain () from /usr/lib/kde4/libkdeinit/libkdeinit4_kwin.so
#47 0x00007fa5e902776d in __libc_start_main (main=0x400630, argc=3, ubp_av=0x7fffb8b34588, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffb8b34578) at libc-start.c:226
#48 0x0000000000400661 in _start ()

Possible duplicates by query: bug 303241, bug 300340, bug 299871, bug 297551, bug 293031.

Reported using DrKonqi
Comment 1 Martin Flöser 2012-10-12 15:09:01 UTC
which window decoration are you using?
Comment 2 jbryslaw 2012-10-12 15:20:50 UTC
"glowglass-lite-white"

Ok, if I switch back to oxygen the problem goes away. But it reappears for
some of the other custom decorations. Maybe because I installed them in KDE
4.8 and then upgraded to 4.9?

2012/10/12 Martin Gräßlin <mgraesslin@kde.org>

> https://bugs.kde.org/show_bug.cgi?id=308299
>
> --- Comment #1 from Martin Gräßlin <mgraesslin@kde.org> ---
> which window decoration are you using?
>
> --
> You are receiving this mail because:
> You reported the bug.
Comment 3 Thomas Lübking 2012-10-12 15:51:42 UTC
Doesn't crash here, but NoBorderOp isn't queued either.
I though there was a commit to queue all window operations?

Should we just useractions.cpp : 251
connect(m_menu, SIGNAL(triggered(QAction*)), this, SLOT(slotWindowOperation(QAction*)), Qt::QueuedConnection);
Comment 4 Martin Flöser 2012-10-12 15:57:30 UTC
(In reply to comment #3)
> Should we just useractions.cpp : 251
> connect(m_menu, SIGNAL(triggered(QAction*)), this,
> SLOT(slotWindowOperation(QAction*)), Qt::QueuedConnection);
makes more sense than fixing each release yet another possible crash
Comment 5 Martin Flöser 2012-11-17 17:33:16 UTC
*** Bug 310253 has been marked as a duplicate of this bug. ***
Comment 6 Martin Flöser 2012-12-29 09:13:52 UTC

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