From: Vadim Zeitlin Date: Thu, 13 Jun 2002 20:41:13 +0000 (+0000) Subject: suppress an assert when a combobox receives WM_KILLFOCUS while it is being destroyed X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/64b397664d8d8c0acd2630ea239ab420fe7fe007 suppress an assert when a combobox receives WM_KILLFOCUS while it is being destroyed git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/msw/combobox.cpp b/src/msw/combobox.cpp index aa72d70d57..e8bfc1b6d5 100644 --- a/src/msw/combobox.cpp +++ b/src/msw/combobox.cpp @@ -96,10 +96,21 @@ LRESULT APIENTRY _EXPORT wxComboEditWndProc(HWND hWnd, case WM_KILLFOCUS: { wxComboBox *combo = wxDynamicCast(win, wxComboBox); - wxCHECK_MSG( combo, 0, _T("should have combo as parent") ); - - if ( combo->MSWProcessEditMsg(message, wParam, lParam) ) + if ( !combo ) + { + // we can get WM_KILLFOCUS while our parent is already half + // destroyed and hence doesn't look like a combobx any + // longer, check for it to avoid bogus assert failures + if ( !win->IsBeingDeleted() ) + { + wxFAIL_MSG( _T("should have combo as parent") ); + } + } + else if ( combo->MSWProcessEditMsg(message, wParam, lParam) ) + { + // handled by parent return 0; + } } break;