From e4cc138cfdaa4bd34baa7d839f52065cb0101268 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=A1clav=20Slav=C3=ADk?= Date: Thu, 22 Nov 2007 15:18:37 +0000 Subject: [PATCH] wxCRIT_SECT_* macros compilation fixes for wxUSE_THREADS=0 case git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@50161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/thread.h | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/include/wx/thread.h b/include/wx/thread.h index 036b3d0adb..1bc283080e 100644 --- a/include/wx/thread.h +++ b/include/wx/thread.h @@ -693,11 +693,12 @@ inline void WXDLLIMPEXP_BASE wxMutexGuiLeave() { } // macros for entering/leaving critical sections which may be used without // having to take them inside "#if wxUSE_THREADS" -#define wxENTER_CRIT_SECT(cs) -#define wxLEAVE_CRIT_SECT(cs) -#define wxCRIT_SECT_DECLARE(cs) -#define wxCRIT_SECT_DECLARE_MEMBER(cs) -#define wxCRIT_SECT_LOCKER(name, cs) +// (the implementation uses dummy structs to force semicolon after the macro) +#define wxENTER_CRIT_SECT(cs) do {} while (0) +#define wxLEAVE_CRIT_SECT(cs) do {} while (0) +#define wxCRIT_SECT_DECLARE(cs) struct wxDummyCS##cs +#define wxCRIT_SECT_DECLARE_MEMBER(cs) struct wxDummyCSMember##cs +#define wxCRIT_SECT_LOCKER(name, cs) struct wxDummyCSLocker##name // if there is only one thread, it is always the main one inline bool wxIsMainThread() { return true; }