From: Robert Roebling Date: Fri, 20 Feb 2004 22:32:00 +0000 (+0000) Subject: Don't do toolbar and menu UI updates if X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/5ce61d9fd2a225e5579c07a60a71bd481a282d99 Don't do toolbar and menu UI updates if the owning frame or TLW is about to get deleted anyway. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/common/menucmn.cpp b/src/common/menucmn.cpp index 3b2c9d37aa..62118b53b5 100644 --- a/src/common/menucmn.cpp +++ b/src/common/menucmn.cpp @@ -537,6 +537,15 @@ wxMenuItem* wxMenuBase::FindItemByPosition(size_t position) const // window will be used. void wxMenuBase::UpdateUI(wxEvtHandler* source) { + if (GetInvokingWindow()) + { + // Don't update menus if the parent + // frame is about to get deleted + wxWindow *tlw = wxGetTopLevelParent( GetInvokingWindow() ); + if (tlw && wxPendingDelete.Member(tlw)) + return; + } + if ( !source && GetInvokingWindow() ) source = GetInvokingWindow()->GetEventHandler(); if ( !source ) diff --git a/src/common/tbarbase.cpp b/src/common/tbarbase.cpp index d78bcf6fe8..d2243fedf2 100644 --- a/src/common/tbarbase.cpp +++ b/src/common/tbarbase.cpp @@ -623,7 +623,8 @@ void wxToolBarBase::UpdateWindowUI(long flags) // There is no sense in updating the toolbar UI // if the parent window is about to get destroyed - if (GetParent() && wxPendingDelete.Member( GetParent() )) + wxWindow *tlw = wxGetTopLevelParent( this ); + if (tlw && wxPendingDelete.Member( tlw )) return; wxEvtHandler* evtHandler = GetEventHandler() ;