summaryrefslogtreecommitdiff
path: root/libraries/wxGTK3/assert.patch
blob: ea5cae370ed6fdf8ac71a9b34c187840bd4d959e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
From ce1dce113c5eda42f49ba3278bb21c61872ca37d Mon Sep 17 00:00:00 2001
From: Paul Cornett <paulcor@users.noreply.github.com>
Date: Mon, 28 Aug 2017 20:31:47 -0700
Subject: [PATCH] Avoid delayed destruction if TLW was never created. See
 #17942

(cherry picked from commit 4a71ba820f085a3d5a7233e9fd0e23ae4e45af58)
---
 src/common/toplvcmn.cpp | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/common/toplvcmn.cpp b/src/common/toplvcmn.cpp
index ef693690c5d..6a722f8be48 100644
--- a/src/common/toplvcmn.cpp
+++ b/src/common/toplvcmn.cpp
@@ -105,10 +105,10 @@ bool wxTopLevelWindowBase::Destroy()
     // as we will be deleted anyhow during its destruction and the pointer
     // stored in wxPendingDelete would become invalid, so just delete ourselves
     // immediately in this case.
-    if ( wxWindow* parent = GetParent() )
+    wxWindow* parent = GetParent();
+    if ( (parent && parent->IsBeingDeleted()) || !GetHandle() )
     {
-        if ( parent->IsBeingDeleted() )
-            return wxNonOwnedWindow::Destroy();
+        return wxNonOwnedWindow::Destroy();
     }
 
     // delayed destruction: the frame will be deleted during the next idle