X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/479647105b2ad7d4016b04aefcf2021daed922a1..14b682f7c36ecf660c2f0bd5c791b8d36d9775f8:/include/wx/atomic.h diff --git a/include/wx/atomic.h b/include/wx/atomic.h index 829e29bdd3..250ca27f19 100644 --- a/include/wx/atomic.h +++ b/include/wx/atomic.h @@ -43,7 +43,7 @@ inline wxUint32 wxAtomicDec (wxUint32 &value) } -#elif defined(__WXMSW__) +#elif defined(__WINDOWS__) // include standard Windows headers #include "wx/msw/wrapwin.h" @@ -88,7 +88,7 @@ inline wxUint32 wxAtomicDec (wxUint32 &value) #else // unknown platform // it will result in inclusion if the generic implementation code a bit later in this page -#define wxHAS_GENERIC_ATOMIC_OPS 1 +#define wxNEEDS_GENERIC_ATOMIC_OPS #endif // unknown platform @@ -105,11 +105,8 @@ inline wxUint32 wxAtomicDec (wxUint32 &value) { return --value; } // behaviour // ---------------------------------------------------------------------------- -#if !defined(wxHAS_GENERIC_ATOMIC_OPS) -#define wxHAS_GENERIC_ATOMIC_OPS 0 -#endif +#ifdef wxNEEDS_GENERIC_ATOMIC_OPS -#if wxHAS_GENERIC_ATOMIC_OPS #include "wx/thread.h" // for wxCriticalSection class wxAtomicInt32 @@ -144,14 +141,16 @@ private: inline void wxAtomicInc(wxAtomicInt32 &value) { value.Inc(); } inline wxInt32 wxAtomicDec(wxAtomicInt32 &value) { return value.Dec(); } -#else // !wxHAS_GENERIC_ATOMIC_OPS +#else // !wxNEEDS_GENERIC_ATOMIC_OPS + +#define wxHAS_ATOMIC_OPS inline void wxAtomicInc(wxInt32 &value) { wxAtomicInc((wxUint32&)value); } inline wxInt32 wxAtomicDec(wxInt32 &value) { return wxAtomicDec((wxUint32&)value); } typedef wxInt32 wxAtomicInt32; -#endif // wxHAS_GENERIC_ATOMIC_OPS +#endif // wxNEEDS_GENERIC_ATOMIC_OPS // all the native implementations use 32 bits currently // for a 64 bits implementation we could use (a future) wxAtomicInt64 as