https://bugs.kde.org/show_bug.cgi?id=392412
Bug ID: 392412
Summary: KWin crash when KWin script handler for clientRemoved
Product: kwin
Version: 5.12.3
Platform: Archlinux Packages
OS: Linux
Status: UNCONFIRMED
Keywords: drkonqi
Severity: normal
Priority: NOR
Component: general
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---
Application: kwin_x11 (5.12.3)
Qt Version: 5.10.1
Frameworks Version: 5.44.0
Operating System: Linux 4.15.12-1-zen x86_64
Distribution: "Arch Linux"
-- Information about the crash:
- What I was doing when the application crashed:
Testing this KWin script that dinamically adds and removes virtual desktops. I
can consistently reproduce this by opening one app (goes to vdesktop 2) open a
3rd one (goes to vdesktop 3) close app on vdesktop 3, close app on vdesktop 2.
On close of vdesktop 2 app we get the crash. No other apps are running at the
time.
- Custom settings of the application:
KWin Script:
workspace.clientAdded.connect(function(client) {
if (client.skipTaskbar || client.modal || client.transient){
return;
}
workspace.desktops = workspace.desktops+1;
workspace.currentDesktop = workspace.desktops;
client.desktop = workspace.currentDesktop;
});
workspace.clientRemoved.connect(function(client) {
if (client.skipTaskbar || client.modal || client.transient){
return;
}
workspace.desktops = workspace.desktops-1;
});
The crash can be reproduced every time.
-- Backtrace:
Application: KWin (kwin_x11), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f1830883840 (LWP 4071))]
Thread 6 (Thread 0x7f180ebdc700 (LWP 5113)):
#0 0x00007f18291ef6fd in pthread_cond_timedwait@@GLIBC_2.3.2 () at
/usr/lib/libpthread.so.0
#1 0x00007f182d38ee61 in QWaitCondition::wait(QMutex*, unsigned long) () at
/usr/lib/libQt5Core.so.5
#2 0x00007f182d38ad31 in () at /usr/lib/libQt5Core.so.5
#3 0x00007f182d38dacd in () at /usr/lib/libQt5Core.so.5
#4 0x00007f18291e908c in start_thread () at /usr/lib/libpthread.so.0
#5 0x00007f18301fee7f in clone () at /usr/lib/libc.so.6
Thread 5 (Thread 0x7f17f77fe700 (LWP 4167)):
#0 0x00007f18291ef3bd in pthread_cond_wait@@GLIBC_2.3.2 () at
/usr/lib/libpthread.so.0
#1 0x00007f182c4a6f77 in () at /usr/lib/libQt5Script.so.5
#2 0x00007f182c4a6fb9 in () at /usr/lib/libQt5Script.so.5
#3 0x00007f18291e908c in start_thread () at /usr/lib/libpthread.so.0
#4 0x00007f18301fee7f in clone () at /usr/lib/libc.so.6
Thread 4 (Thread 0x7f180df79700 (LWP 4139)):
#0 0x00007f18301f4a76 in ppoll () at /usr/lib/libc.so.6
#1 0x00007f182d5d2dc3 in qt_safe_poll(pollfd*, unsigned long, timespec const*)
() at /usr/lib/libQt5Core.so.5
#2 0x00007f182d5d455f in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
at /usr/lib/libQt5Core.so.5
#3 0x00007f182d57932b in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at
/usr/lib/libQt5Core.so.5
#4 0x00007f182d38872e in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5 0x00007f1827cb2379 in () at /usr/lib/libQt5Qml.so.5
#6 0x00007f182d38dacd in () at /usr/lib/libQt5Core.so.5
#7 0x00007f18291e908c in start_thread () at /usr/lib/libpthread.so.0
#8 0x00007f18301fee7f in clone () at /usr/lib/libc.so.6
Thread 3 (Thread 0x7f180ffff700 (LWP 4126)):
#0 0x00007f18301f4a76 in ppoll () at /usr/lib/libc.so.6
#1 0x00007f182d5d2dc3 in qt_safe_poll(pollfd*, unsigned long, timespec const*)
() at /usr/lib/libQt5Core.so.5
#2 0x00007f182d5d455f in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
at /usr/lib/libQt5Core.so.5
#3 0x00007f182d57932b in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at
/usr/lib/libQt5Core.so.5
#4 0x00007f182d38872e in QThread::exec() () at /usr/lib/libQt5Core.so.5
#5 0x00007f1826b54416 in () at /usr/lib/libQt5DBus.so.5
#6 0x00007f182d38dacd in () at /usr/lib/libQt5Core.so.5
#7 0x00007f18291e908c in start_thread () at /usr/lib/libpthread.so.0
#8 0x00007f18301fee7f in clone () at /usr/lib/libc.so.6
Thread 2 (Thread 0x7f18169ed700 (LWP 4112)):
#0 0x00007f18301f497b in poll () at /usr/lib/libc.so.6
#1 0x00007f182f0f1180 in () at /usr/lib/libxcb.so.1
#2 0x00007f182f0f2e4b in xcb_wait_for_event () at /usr/lib/libxcb.so.1
#3 0x00007f1817ad882a in () at /usr/lib/libQt5XcbQpa.so.5
#4 0x00007f182d38dacd in () at /usr/lib/libQt5Core.so.5
#5 0x00007f18291e908c in start_thread () at /usr/lib/libpthread.so.0
#6 0x00007f18301fee7f in clone () at /usr/lib/libc.so.6
Thread 1 (Thread 0x7f1830883840 (LWP 4071)):
[KCrash Handler]
#6 0x0000000000000000 in ()
#7 0x00007f182fced9dd in KWin::Workspace::constrainedStackingOrder() () at
/usr/lib/libkwin.so.5
#8 0x00007f182fcee7c1 in KWin::Workspace::updateStackingOrder(bool) () at
/usr/lib/libkwin.so.5
#9 0x00007f182fceeb61 in KWin::Workspace::blockStackingUpdates(bool) () at
/usr/lib/libkwin.so.5
#10 0x00007f182fc95e7d in KWin::Client::releaseWindow(bool) () at
/usr/lib/libkwin.so.5
#11 0x00007f182fcfb2c3 in
KWin::Client::unmapNotifyEvent(xcb_unmap_notify_event_t*) () at
/usr/lib/libkwin.so.5
#12 0x00007f182fcfee64 in KWin::Client::windowEvent(xcb_generic_event_t*) () at
/usr/lib/libkwin.so.5
#13 0x00007f182fcffe78 in KWin::Workspace::workspaceEvent(xcb_generic_event_t*)
() at /usr/lib/libkwin.so.5
#14 0x00007f182d577d5f in
QAbstractEventDispatcher::filterNativeEvent(QByteArray const&, void*, long*) ()
at /usr/lib/libQt5Core.so.5
#15 0x00007f1817ada3f2 in QXcbConnection::handleXcbEvent(xcb_generic_event_t*)
() at /usr/lib/libQt5XcbQpa.so.5
#16 0x00007f1817adb07e in QXcbConnection::processXcbEvents() () at
/usr/lib/libQt5XcbQpa.so.5
#17 0x00007f182d5ac062 in QObject::event(QEvent*) () at
/usr/lib/libQt5Core.so.5
#18 0x00007f182e2f8fec in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() at /usr/lib/libQt5Widgets.so.5
#19 0x00007f182e3009c6 in QApplication::notify(QObject*, QEvent*) () at
/usr/lib/libQt5Widgets.so.5
#20 0x00007f182d57acf0 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() at /usr/lib/libQt5Core.so.5
#21 0x00007f182d57d956 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) () at /usr/lib/libQt5Core.so.5
#22 0x00007f182d5d4376 in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
at /usr/lib/libQt5Core.so.5
#23 0x00007f1817b6071e in () at /usr/lib/libQt5XcbQpa.so.5
#24 0x00007f182d57932b in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at
/usr/lib/libQt5Core.so.5
#25 0x00007f182d582728 in QCoreApplication::exec() () at
/usr/lib/libQt5Core.so.5
#26 0x00007f18304c8719 in kdemain () at /usr/lib/libkdeinit5_kwin_x11.so
#27 0x00007f1830129f4a in __libc_start_main () at /usr/lib/libc.so.6
#28 0x000055e2486c776a in _start ()
The reporter indicates this bug may be a duplicate of or related to bug 389201.
Possible duplicates by query: bug 389201.
Reported using DrKonqi
--
You are receiving this mail because:
You are watching all bug changes.