X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2064113c9d9f81acb851b974a21a5f9170dfe9e2..f8b1df0b15f843b8f47efb9bee38f1de0fa95020:/include/wx/log.h diff --git a/include/wx/log.h b/include/wx/log.h index adab3ceb5b..a4d800e623 100644 --- a/include/wx/log.h +++ b/include/wx/log.h @@ -14,6 +14,10 @@ #include "wx/defs.h" +#if wxUSE_THREADS + class WXDLLIMPEXP_FWD_BASE wxCriticalSection; +#endif + // ---------------------------------------------------------------------------- // common constants for use in wxUSE_LOG/!wxUSE_LOG // ---------------------------------------------------------------------------- @@ -302,10 +306,15 @@ protected: #endif // log a message indicating the number of times the previous message was - // repeated; only does something if ms_prevCounter > 0 - static void LogLastRepetitionCountIfNeeded(); + // repeated if ms_prevCounter > 0, does nothing otherwise; return the old + // value of ms_prevCounter + unsigned LogLastRepeatIfNeeded(); private: + // implement of LogLastRepeatIfNeeded(): it assumes that the + // caller had already locked ms_prevCS + unsigned LogLastRepeatIfNeededUnlocked(); + // static variables // ---------------- @@ -313,6 +322,9 @@ private: // with the number of times it was repeated static bool ms_bRepetCounting; +#if wxUSE_THREADS + static wxCriticalSection ms_prevCS; // protects the ms_prev values below +#endif static wxString ms_prevString; // previous message that was logged static unsigned ms_prevCounter; // how many times it was repeated static time_t ms_prevTimeStamp;// timestamp of the previous message