[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [KScreen] [Bug 343628] New: qt5 applications crash when kscreen detects detach of external screen
From:       <azrdev () googlemail ! com>
Date:       2015-01-31 16:57:56
Message-ID: bug-343628-17878 () http ! bugs ! kde ! org/
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=343628

            Bug ID: 343628
           Summary: qt5 applications crash when kscreen detects detach of
                    external screen
           Product: KScreen
           Version: 1.0.2
          Platform: Archlinux Packages
                OS: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: common
          Assignee: dvratil@redhat.com
          Reporter: azrdev@googlemail.com

I experienced this with cantata for some months now (probably since they
upgraded to qt5), and since archlinux rolled out KF5 it happens to konsole,
too. Upon unplugging the HDMI cable to my second screen from my laptop, I press
my shortcut to call kscreen. It will open and detect the screen is gone,
removing it from the configuration. I can see everything flickering shortly,
then coming back with the kscreen window - and in that moment the konsole icon
disappears from my tray.

Running coredumpctl gdb   gives me a backtrace (from konsole):
#0  0x00007f33c7c13080 in QScreen::handle() const () from
/usr/lib/libQt5Gui.so.5
#1  0x00007f33b7ca1562 in ?? () from /usr/lib/qt/plugins/platforms/libqxcb.so
#2  0x00007f33cb3339bb in QX11Info::display() () from
/usr/lib/libQt5X11Extras.so.5
#3  0x00007f33c5c404c4 in KCrash::defaultCrashHandler(int) () from
/usr/lib/libKF5Crash.so.5
#4  <signal handler called>
#5  0x00007f33c81dd177 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion
const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from
/usr/lib/libQt5Widgets.so.5
#6  0x00007f33c81dd971 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*,
QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*,
QWidgetBackingStore*) () from /usr/lib/libQt5Widgets.so.5
#7  0x00007f33c81dd7c7 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*,
QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*,
QWidgetBackingStore*) () from /usr/lib/libQt5Widgets.so.5
#8  0x00007f33c81dc7b7 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion
const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from
/usr/lib/libQt5Widgets.so.5
#9  0x00007f33c81ad019 in ?? () from /usr/lib/libQt5Widgets.so.5
#10 0x00007f33c81ad3b9 in ?? () from /usr/lib/libQt5Widgets.so.5
#11 0x00007f33c81ce04f in QWidgetPrivate::syncBackingStore() () from
/usr/lib/libQt5Widgets.so.5
#12 0x00007f33c81e2f58 in QWidget::event(QEvent*) () from
/usr/lib/libQt5Widgets.so.5
#13 0x00007f33c82f6aab in QMainWindow::event(QEvent*) () from
/usr/lib/libQt5Widgets.so.5
#14 0x00007f33ca070e3a in KMainWindow::event(QEvent*) () from
/usr/lib/libKF5XmlGui.so.5
#15 0x00007f33ca0bc6a5 in KXmlGuiWindow::event(QEvent*) () from
/usr/lib/libKF5XmlGui.so.5
#16 0x00007f33c819fd8c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() from /usr/lib/libQt5Widgets.so.5
#17 0x00007f33c81a5370 in QApplication::notify(QObject*, QEvent*) () from
/usr/lib/libQt5Widgets.so.5
#18 0x00007f33c78c1a9b in QCoreApplication::notifyInternal(QObject*, QEvent*)
() from /usr/lib/libQt5Core.so.5
#19 0x00007f33c81ae43f in ?? () from /usr/lib/libQt5Widgets.so.5
#20 0x00007f33c81af02d in ?? () from /usr/lib/libQt5Widgets.so.5
#21 0x00007f33c81fa21c in ?? () from /usr/lib/libQt5Widgets.so.5
#22 0x00007f33c78f1339 in QMetaObject::activate(QObject*, int, int, void**) ()
from /usr/lib/libQt5Core.so.5
#23 0x00007f33c7bf09af in QWindow::screenChanged(QScreen*) () from
/usr/lib/libQt5Gui.so.5
#24 0x00007f33c7bf18b5 in QWindowPrivate::emitScreenChangedRecursion(QScreen*)
() from /usr/lib/libQt5Gui.so.5
#25 0x00007f33c7bf49e3 in QWindowPrivate::setTopLevelScreen(QScreen*, bool) ()
from /usr/lib/libQt5Gui.so.5
#26 0x00007f33c7bf4b75 in QWindow::screenDestroyed(QObject*) () from
/usr/lib/libQt5Gui.so.5
#27 0x00007f33c78f0cca in QMetaObject::activate(QObject*, int, int, void**) ()
from /usr/lib/libQt5Core.so.5
#28 0x00007f33c78f1a6f in QObject::destroyed(QObject*) () from
/usr/lib/libQt5Core.so.5
#29 0x00007f33c78fa2bb in QObject::~QObject() () from /usr/lib/libQt5Core.so.5
#30 0x00007f33c7c13069 in QScreen::~QScreen() () from /usr/lib/libQt5Gui.so.5
#31 0x00007f33c7bda922 in QPlatformScreen::~QPlatformScreen() () from
/usr/lib/libQt5Gui.so.5
#32 0x00007f33b7c958d9 in ?? () from /usr/lib/qt/plugins/platforms/libqxcb.so
#33 0x00007f33b7c888fb in ?? () from /usr/lib/qt/plugins/platforms/libqxcb.so
#34 0x00007f33b7c8957d in ?? () from /usr/lib/qt/plugins/platforms/libqxcb.so
#35 0x00007f33b7c8a81b in ?? () from /usr/lib/qt/plugins/platforms/libqxcb.so
#36 0x00007f33c78f24ba in QObject::event(QEvent*) () from
/usr/lib/libQt5Core.so.5
#37 0x00007f33c819fd8c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() from /usr/lib/libQt5Widgets.so.5
#38 0x00007f33c81a5370 in QApplication::notify(QObject*, QEvent*) () from
/usr/lib/libQt5Widgets.so.5
#39 0x00007f33c78c1a9b in QCoreApplication::notifyInternal(QObject*, QEvent*)
() from /usr/lib/libQt5Core.so.5
#40 0x00007f33c78c3adb in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) () from /usr/lib/libQt5Core.so.5
#41 0x00007f33c7918c83 in ?? () from /usr/lib/libQt5Core.so.5
#42 0x00007f33c2892a0d in g_main_context_dispatch () from
/usr/lib/libglib-2.0.so.0
#43 0x00007f33c2892cf8 in ?? () from /usr/lib/libglib-2.0.so.0
#44 0x00007f33c2892dac in g_main_context_iteration () from
/usr/lib/libglib-2.0.so.0
#45 0x00007f33c7919077 in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
from /usr/lib/libQt5Core.so.5
#46 0x00007f33c78bf532 in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from
/usr/lib/libQt5Core.so.5
#47 0x00007f33c78c6f0c in QCoreApplication::exec() () from
/usr/lib/libQt5Core.so.5
#48 0x00007f33cb0d7539 in kdemain () from /usr/lib/libkdeinit5_konsole.so
#49 0x00007f33cad32040 in __libc_start_main () from /usr/lib/libc.so.6
#50 0x000000000040076e in _start ()


I'm glad to help debugging.

Reproducible: Always

Steps to Reproduce:
1. Open konsole / cantata.
2. Attach a second screen.
3. Detach the screen.
4. start kscreen (or klick on the applet) for it to detect the detach

Actual Results:  
see the qt5 applications crash

-- 
You are receiving this mail because:
You are watching all bug changes.
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic