X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/807a903e6807ae3e49928bda488a04bc0d832149..a217777fb367f47e8d258af8181ac27f076dc183:/src/common/log.cpp?ds=sidebyside diff --git a/src/common/log.cpp b/src/common/log.cpp index 0f30a9e562..a60e289df5 100644 --- a/src/common/log.cpp +++ b/src/common/log.cpp @@ -112,23 +112,9 @@ static inline bool IsLoggingEnabled() // generic log function void wxLogGeneric(wxLogLevel level, const wxChar *szFormat, ...) { -<<<<<<< log.cpp - if ( wxLog::GetActiveTarget() != NULL ) { - wxCRIT_SECT_LOCKER(locker, gs_csLogBuf); - - va_list argptr; - va_start(argptr, szFormat); - wxVsnprintf(s_szBuf, WXSIZEOF(s_szBuf), szFormat, argptr); - va_end(argptr); -======= if ( IsLoggingEnabled() ) { wxCRIT_SECT_LOCKER(locker, gs_csLogBuf); ->>>>>>> 1.93.2.3 -<<<<<<< log.cpp - wxLog::OnLog(level, s_szBuf, time(NULL)); - } -======= va_list argptr; va_start(argptr, szFormat); wxVsnprintf(s_szBuf, WXSIZEOF(s_szBuf), szFormat, argptr); @@ -136,7 +122,6 @@ void wxLogGeneric(wxLogLevel level, const wxChar *szFormat, ...) wxLog::OnLog(level, s_szBuf, time(NULL)); } ->>>>>>> 1.93.2.3 } #define IMPLEMENT_LOG_FUNCTION(level) \ @@ -338,6 +323,16 @@ wxLog *wxLog::SetActiveTarget(wxLog *pLogger) return pOldLogger; } +void wxLog::DontCreateOnDemand() +{ + ms_bAutoCreate = FALSE; + + // this is usually called at the end of the program and we assume that it + // is *always* called at the end - so we free memory here to avoid false + // memory leak reports from wxWin memory tracking code + ClearTraceMasks(); +} + void wxLog::RemoveTraceMask(const wxString& str) { int index = ms_aTraceMasks.Index(str); @@ -345,6 +340,11 @@ void wxLog::RemoveTraceMask(const wxString& str) ms_aTraceMasks.Remove((size_t)index); } +void wxLog::ClearTraceMasks() +{ + ms_aTraceMasks.Clear(); +} + void wxLog::TimeStamp(wxString *str) { if ( ms_timestamp )