X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/fa156b74fcb541b979e973bcdd66ff377c0eb6a5..8a3f08bc6f9d7d7ece178d98fe01ac3ef45e1509:/src/gtk/app.cpp diff --git a/src/gtk/app.cpp b/src/gtk/app.cpp index 75e3cec2be..b452afc77a 100644 --- a/src/gtk/app.cpp +++ b/src/gtk/app.cpp @@ -548,7 +548,7 @@ void wxApp::CleanUp() // check for memory leaks #if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT - if (wxDebugContext::CountObjectsLeft() > 0) + if (wxDebugContext::CountObjectsLeft(TRUE) > 0) { wxLogDebug(wxT("There were memory leaks.\n")); wxDebugContext::Dump(); @@ -653,6 +653,15 @@ void wxEntryCleanup() int wxEntry( int argc, char *argv[] ) { +#if (defined(__WXDEBUG__) && wxUSE_MEMORY_TRACING) || wxUSE_DEBUG_CONTEXT + // This seems to be necessary since there are 'rogue' + // objects present at this point (perhaps global objects?) + // Setting a checkpoint will ignore them as far as the + // memory checking facility is concerned. + // Of course you may argue that memory allocated in globals should be + // checked, but this is a reasonable compromise. + wxDebugContext::SetCheckpoint(); +#endif int err = wxEntryStart(argc, argv); if (err) return err;