After updating QtCurve from 1.8.18+git20160112-0cd6aae (1.8.18-247-gd126bd5) to 1.8.18+git20160320-3d8622c (1.8.18-251-g3d8622c) users report about multiple kwin_x11 crashes at KDE startup. Typical backtrace looks like this: Program received signal SIGSEGV, Segmentation fault. 0xb52fdb78 in QDBusConnection::QDBusConnection(QDBusConnection const&) () from /usr/lib/i386-linux-gnu/libQt5DBus.so.5 (gdb) bt full #0 0xb52fdb78 in QDBusConnection::QDBusConnection(QDBusConnection const&) () from /usr/lib/i386-linux-gnu/libQt5DBus.so.5 No symbol table info available. #1 0xb53008f4 in QDBusConnection::sessionBus() () from /usr/lib/i386-linux-gnu/libQt5DBus.so.5 No symbol table info available. #2 0xb0a9d11a in QtCurve::Style::disconnectDBus (this=0x809f690) at ../../../qt5/style/qtcurve.cpp:694 cb = <optimized out> bus = {static staticMetaObject = {d = {superdata = 0x0, stringdata = 0xb5356e20, data = 0xb5356ce0, static_metacall = 0x0, relatedMetaObjects = 0x0, extradata = 0x0}}, d = 0x8062238} #3 0xb0a9d429 in QtCurve::Style::<lambda(void*)>::operator()(void *) (data=<optimized out>, __closure=<optimized out>) at ../../../qt5/style/qtcurve.cpp:663 No locals. #4 0xb0ae2678 in QtCurve::runAllCleanups () at ../../../qt5/style/qtcurve_plugin.cpp:86 func = <optimized out> data = <optimized out> #5 0xb0ae2884 in QtCurve::StylePlugin::~StylePlugin (this=0x809c310, __in_chrg=<optimized out>) at ../../../qt5/style/qtcurve_plugin.cpp:167 No locals. #6 0xb0ae28ca in QtCurve::StylePlugin::~StylePlugin (this=0x809c310, __in_chrg=<optimized out>) at ../../../qt5/style/qtcurve_plugin.cpp:170 No locals. #7 0xb6b198b5 in ?? () from /usr/lib/i386-linux-gnu/sse2/libQt5Core.so.5 No symbol table info available. #8 0xb6b11c54 in ?? () from /usr/lib/i386-linux-gnu/sse2/libQt5Core.so.5 No symbol table info available. #9 0xb6b11e5a in ?? () from /usr/lib/i386-linux-gnu/sse2/libQt5Core.so.5 No symbol table info available. #10 0xb6b5cf3c in QObject::~QObject() () from /usr/lib/i386-linux-gnu/sse2/libQt5Core.so.5 No symbol table info available. #11 0xb6b10e33 in QFactoryLoader::~QFactoryLoader() () from /usr/lib/i386-linux-gnu/sse2/libQt5Core.so.5 No symbol table info available. #12 0xb747beb8 in ?? () from /usr/lib/i386-linux-gnu/libQt5Widgets.so.5 No symbol table info available. #13 0xb7dfa933 in __run_exit_handlers (status=1, listp=0xb7f803dc <__exit_funcs>, run_list_atexit=true) at exit.c:82 atfct = <optimized out> onfct = <optimized out> cxafct = <optimized out> #14 0xb7dfa98f in __GI_exit (status=1) at exit.c:104 No locals. #15 0xb7f86e39 in ?? () from /usr/lib/i386-linux-gnu/libkdeinit5_kwin_x11.so No symbol table info available. ---Type <return> to continue, or q <return> to quit--- #16 0xb6b551d0 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/i386-linux-gnu/sse2/libQt5Core.so.5 No symbol table info available. #17 0xb6b55aad in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/i386-linux-gnu/sse2/libQt5Core.so.5 No symbol table info available. #18 0xb7a8e3e2 in KSelectionOwner::failedToClaimOwnership() () from /usr/lib/i386-linux-gnu/libKF5WindowSystem.so.5 No symbol table info available. #19 0xb7a79319 in KSelectionOwner::claim(bool, bool) () from /usr/lib/i386-linux-gnu/libKF5WindowSystem.so.5 No symbol table info available. #20 0xb7f87aab in ?? () from /usr/lib/i386-linux-gnu/libkdeinit5_kwin_x11.so No symbol table info available. #21 0xb7b91ff4 in KWin::Application::start() () from /usr/lib/i386-linux-gnu/libkwin.so.5 No symbol table info available. #22 0xb7f885ac in kdemain () from /usr/lib/i386-linux-gnu/libkdeinit5_kwin_x11.so No symbol table info available. #23 0x08048607 in main () No symbol table info available. Another example: https://bugs.debian.org/823674 Reproducible: Always Steps to Reproduce: 1. Login to KDE Plasma 5. 2. kwin_x11 crashes. 3. Close crash dialog window. 4. kwin_x11 crashes again. 5. Close crash dialog window. 6. kwin_x11 crashes again. 7. ... Actual Results: Despite this annoying crash dialog all programs works like expected. Or I have missed something... Expected Results: QtCurve should work as earlier after this code refactoring. System: up to date Debian testing or unstable Libraries: Qt -- 5.5.1, KF5 -- 5.16.0, kwin-x11 -- 5.4.3
The commit fixes segfault on a Qt upgrade. I do have to workaround a number of bugs so maybe it's fine to disable it on 5.5 ....
I'm using KF5.22 and Qt 5.6.0. KWin doesn't crash but other programs (e.g. kactivitymanagerd) do crash at startup, in disconnectDBus as in this bug.
I confirm next crashes: korgac, kactivitymanagerd - at startup dolphin - at logoff ktorrent5 - starting with argument (actually, didn't kill app, but crash-reports started) pasmashell - occasional Qt 5.6.0 OpenSuse Tumbleweed
See more detail at https://bugs.kde.org/show_bug.cgi?id=363753 AFAICT it's a Qt5 bug. *** This bug has been marked as a duplicate of bug 363753 ***