From cafcf62a834ae712e75db7179f530afb791579ce Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 15 Sep 2003 11:46:51 +0000 Subject: [PATCH] remove us from the parents children list in Destroy() git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/common/toplvcmn.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/common/toplvcmn.cpp b/src/common/toplvcmn.cpp index dc1a79b916..7aba62adf9 100644 --- a/src/common/toplvcmn.cpp +++ b/src/common/toplvcmn.cpp @@ -80,6 +80,19 @@ bool wxTopLevelWindowBase::Destroy() if ( !wxPendingDelete.Member(this) ) wxPendingDelete.Append(this); + // but hide it immediately + Hide(); + + // also remove it from the list of parents children so that the loop in + // wxWindowBase::DestroyChildren() eventually terminates + if ( m_parent ) + { + m_parent->RemoveChild(this); + + // don't do it again in our dtor + m_parent = NULL; + } + return TRUE; } -- 2.50.0