-}
-
-void wxApp::CleanUp()
-{
-#if wxUSE_LOG
- // flush the logged messages if any
- wxLog *log = wxLog::GetActiveTarget();
- if (log != NULL && log->HasPendingMessages())
- log->Flush();
-
- // continuing to use user defined log target is unsafe from now on because
- // some resources may be already unavailable, so replace it by something
- // more safe
- wxLog *oldlog = wxLog::SetActiveTarget(new wxLogStderr);
- if ( oldlog )
- delete oldlog;
-#endif // wxUSE_LOG
-
- wxModule::CleanUpModules();
-
-#if wxUSE_WX_RESOURCES
- wxCleanUpResourceSystem();
-#endif
-
- if (wxTheColourDatabase)
- delete wxTheColourDatabase;
-
- wxTheColourDatabase = (wxColourDatabase*) NULL;
-
- wxDeleteStockObjects();
- wxDeleteStockLists();
-
- // Can't do this in wxModule, because fonts are needed by stock lists
- delete wxTheFontsManager;
- wxTheFontsManager = (wxFontsManager*) NULL;
-
- delete wxTheApp;
- wxTheApp = (wxApp*) NULL;
-
- // GL: I'm annoyed ... I don't know where to put this and I don't want to
- // create a module for that as it's part of the core.
-#if wxUSE_THREADS
- delete wxPendingEvents;
- delete wxPendingEventsLocker;
-#endif
-
- wxSystemSettings::Done();
-
- delete[] wxBuffer;
-
- wxClassInfo::CleanUpClasses();
-
- // check for memory leaks
-#if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT
- if (wxDebugContext::CountObjectsLeft(TRUE) > 0)