// 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);
wxLog::OnLog(level, s_szBuf, time(NULL));
}
->>>>>>> 1.93.2.3
}
#define IMPLEMENT_LOG_FUNCTION(level) \
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);
ms_aTraceMasks.Remove((size_t)index);
}
+void wxLog::ClearTraceMasks()
+{
+ ms_aTraceMasks.Clear();
+}
+
void wxLog::TimeStamp(wxString *str)
{
if ( ms_timestamp )