From: Vadim Zeitlin Date: Tue, 6 Oct 2009 00:08:10 +0000 (+0000) Subject: Ensure that an event loop exists in ShowViewOrWindowWithEffect(). X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/dc72e2adfa7e7de367c244e91c0402733c2904a8 Ensure that an event loop exists in ShowViewOrWindowWithEffect(). We may not have an event loop yet if wxWindow::ShowWithEffect() is called during the application startup, create a temporary event loop instead of crashing in this case. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm index 6488703c09..26d42af3f6 100644 --- a/src/osx/cocoa/window.mm +++ b/src/osx/cocoa/window.mm @@ -1395,9 +1395,12 @@ wxWidgetCocoaImpl::ShowViewOrWindowWithEffect(wxWindow *win, // // notice that because the default animation mode is NSAnimationBlocking, // no user input events ought to be processed from here - wxEventLoopBase * const loop = wxEventLoopBase::GetActive(); - while ( ![animDelegate isDone] ) - loop->Dispatch(); + { + wxEventLoopGuarantor ensureEventLoopExistence; + wxEventLoopBase * const loop = wxEventLoopBase::GetActive(); + while ( ![animDelegate isDone] ) + loop->Dispatch(); + } if ( !show ) {