]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/init.cpp
wxMessageBox off the main thread lost result code.
[wxWidgets.git] / src / common / init.cpp
index 08a51de7553d086d0b88a7d877905ce6b62dca5f..e00daeb7013a1c83db8175f2ac0bfb1171906488 100644 (file)
@@ -4,7 +4,6 @@
 // Author:      Vadim Zeitlin
 // Modified by:
 // Created:     04.10.99
 // Author:      Vadim Zeitlin
 // Modified by:
 // Created:     04.10.99
-// RCS-ID:      $Id$
 // Copyright:   (c) Vadim Zeitlin
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 // Copyright:   (c) Vadim Zeitlin
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
     #endif // wxCrtSetDbgFlag
 #endif // __WINDOWS__
 
     #endif // wxCrtSetDbgFlag
 #endif // __WINDOWS__
 
+#if wxUSE_UNICODE && defined(__WXOSX__)
+    #include <locale.h>
+#endif
+
 // ----------------------------------------------------------------------------
 // private classes
 // ----------------------------------------------------------------------------
 // ----------------------------------------------------------------------------
 // private classes
 // ----------------------------------------------------------------------------
@@ -406,6 +409,11 @@ static void DoCommonPostCleanup()
     delete wxMessageOutput::Set(NULL);
 
 #if wxUSE_LOG
     delete wxMessageOutput::Set(NULL);
 
 #if wxUSE_LOG
+    // call this first as it has a side effect: in addition to flushing all
+    // logs for this thread, it also flushes everything logged from other
+    // threads
+    wxLog::FlushActive();
+
     // and now delete the last logger as well
     //
     // we still don't disable log target auto-vivification even if any log
     // and now delete the last logger as well
     //
     // we still don't disable log target auto-vivification even if any log
@@ -464,6 +472,9 @@ int wxEntryReal(int& argc, wxChar **argv)
 
     wxTRY
     {
 
     wxTRY
     {
+#if 0 // defined(__WXOSX__) && wxOSX_USE_COCOA_OR_IPHONE
+        // everything done in OnRun using native callbacks
+#else
         // app initialization
         if ( !wxTheApp->CallOnInit() )
         {
         // app initialization
         if ( !wxTheApp->CallOnInit() )
         {
@@ -479,7 +490,7 @@ int wxEntryReal(int& argc, wxChar **argv)
         } callOnExit;
 
         WX_SUPPRESS_UNUSED_WARN(callOnExit);
         } callOnExit;
 
         WX_SUPPRESS_UNUSED_WARN(callOnExit);
-
+#endif
         // app execution
         return wxTheApp->OnRun();
     }
         // app execution
         return wxTheApp->OnRun();
     }