From 9577c227810731da40704598d6b4babc139eaec6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samuel=20R=C3=B8dal?= Date: Mon, 1 Oct 2012 10:10:08 +0200 Subject: Prevent crashing on screen deletion. Even child windows need to hook into the screen destroyed signal to avoid having a dangling screen pointer. Change-Id: I7b613356c333be6e9dfdf5db45f70a521a9b8fe2 Reviewed-by: Shawn Rutledge Reviewed-by: Paul Olav Tvete --- src/gui/kernel/qwindow.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/gui/kernel') diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp index 1e2ac5b0a6..79927cbc71 100644 --- a/src/gui/kernel/qwindow.cpp +++ b/src/gui/kernel/qwindow.cpp @@ -177,6 +177,7 @@ QWindow::QWindow(QWindow *parent) d->screen = parent->screen(); if (!d->screen) d->screen = QGuiApplication::primaryScreen(); + connect(d->screen, SIGNAL(destroyed(QObject*)), this, SLOT(screenDestroyed(QObject*))); QGuiApplicationPrivate::window_list.prepend(this); } @@ -202,6 +203,7 @@ QWindow::QWindow(QWindowPrivate &dd, QWindow *parent) d->screen = parent->screen(); if (!d->screen) d->screen = QGuiApplication::primaryScreen(); + connect(d->screen, SIGNAL(destroyed(QObject*)), this, SLOT(screenDestroyed(QObject*))); QGuiApplicationPrivate::window_list.prepend(this); } -- cgit v1.2.3