X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/95c336d620c49d16f2c6ceb52779bb657bb59494..9611686694f0449c7f7ced2e0badad9f04a22ea5:/src/mac/carbon/app.cpp?ds=sidebyside diff --git a/src/mac/carbon/app.cpp b/src/mac/carbon/app.cpp index e997cc3e1b..8c52e9f221 100644 --- a/src/mac/carbon/app.cpp +++ b/src/mac/carbon/app.cpp @@ -1231,6 +1231,14 @@ void wxApp::MacHandleUnhandledEvent( WXEVENTREF evr ) // Override to process unhandled events as you please } +CFMutableArrayRef GetAutoReleaseArray() +{ + static CFMutableArrayRef array = 0; + if ( array == 0) + array= CFArrayCreateMutable(kCFAllocatorDefault,0,&kCFTypeArrayCallBacks); + return array; +} + void wxApp::MacHandleOneEvent( WXEVENTREF evr ) { EventTargetRef theTarget; @@ -1246,6 +1254,13 @@ void wxApp::MacHandleOneEvent( WXEVENTREF evr ) #if wxUSE_THREADS wxMutexGuiLeaveOrEnter(); #endif // wxUSE_THREADS + + CFArrayRemoveAllValues( GetAutoReleaseArray() ); +} + +void wxApp::MacAddToAutorelease( void* cfrefobj ) +{ + CFArrayAppendValue( GetAutoReleaseArray(), cfrefobj ); } long wxMacTranslateKey(unsigned char key, unsigned char code)