diff options
author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2021-10-13 15:36:08 +0200 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2021-11-04 22:35:52 +0000 |
commit | 512a6bed5b8342bb7546bbc05991471c3d43aca7 (patch) | |
tree | 047ce42d61e46ce9504da03c2dc49ab676c1a7e0 /src | |
parent | 67a63567cafaf514d161dadbb6b5b055eea22afa (diff) |
Prevent recursive calls to QWindow::close
QWidget will call close() in its destructor, which we might end up
in if a user deletes the widget in the closeEvent.
Change-Id: I39684aec0ca130033dad60f2bbf823364a5edcec
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit acb86da793c603991da63ba6ab7c6684518d0cd2)
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/kernel/qwindow.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp index 71ae6a2ccc..77e7554394 100644 --- a/src/gui/kernel/qwindow.cpp +++ b/src/gui/kernel/qwindow.cpp @@ -2263,6 +2263,8 @@ void QWindow::showNormal() bool QWindow::close() { Q_D(QWindow); + if (d->inClose) + return true; // Do not close non top level windows if (!isTopLevel()) |