summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel/qwindow.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2016-07-12 09:01:39 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2016-08-25 06:50:32 +0000
commit1e6630b54ce9a005c2cffac4dac95641838e8231 (patch)
tree11ba821692735baf7026626ac509ff11caafa956 /src/gui/kernel/qwindow.cpp
parentd0012ad64cd6733c072dd18cf82edef4ded32f95 (diff)
Fix crash when exiting while stacked modal dialogs are shown
Remove QWindow instance from QGuiApplicationPrivate::modalWindowList in the destructor. Task-number: QTBUG-54566 Change-Id: I1f07fb46a371f69f04907b20657f3b05571445bd Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Diffstat (limited to 'src/gui/kernel/qwindow.cpp')
-rw-r--r--src/gui/kernel/qwindow.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp
index 7f84706b6f..2e212e5fdb 100644
--- a/src/gui/kernel/qwindow.cpp
+++ b/src/gui/kernel/qwindow.cpp
@@ -204,6 +204,8 @@ QWindow::~QWindow()
{
destroy();
QGuiApplicationPrivate::window_list.removeAll(this);
+ if (!QGuiApplicationPrivate::is_app_closing)
+ QGuiApplicationPrivate::instance()->modalWindowList.removeOne(this);
}
void QWindowPrivate::init()