gcc is too aggressively hiding these inlines on wxCriticialSection on osx, expose them for wxPython

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor 2008-09-04 06:26:24 +00:00
parent c7639882c1
commit ca9e2173a6
2 changed files with 15 additions and 2 deletions

View File

@ -207,7 +207,11 @@ private:
#if !defined(__WXMSW__)
#define wxCRITSECT_IS_MUTEX 1
#ifdef __WXMAC__
#define wxCRITSECT_INLINE
#else
#define wxCRITSECT_INLINE inline
#endif
#else // MSW
#define wxCRITSECT_IS_MUTEX 0
@ -222,7 +226,6 @@ public:
// ctor & dtor
wxCRITSECT_INLINE wxCriticalSection();
wxCRITSECT_INLINE ~wxCriticalSection();
// enter the section (the same as locking a mutex)
wxCRITSECT_INLINE void Enter();
@ -261,7 +264,7 @@ private:
DECLARE_NO_COPY_CLASS(wxCriticalSection)
};
#if wxCRITSECT_IS_MUTEX
#if wxCRITSECT_IS_MUTEX && !defined(__WXMAC__)
// implement wxCriticalSection using mutexes
inline wxCriticalSection::wxCriticalSection() { }
inline wxCriticalSection::~wxCriticalSection() { }

View File

@ -67,6 +67,16 @@
#define THR_ID(thr) ((long)(thr)->GetId())
#endif
#ifdef __WXMAC__
// implement wxCriticalSection using mutexes
wxCriticalSection::wxCriticalSection() { }
wxCriticalSection::~wxCriticalSection() { }
void wxCriticalSection::Enter() { (void)m_mutex.Lock(); }
void wxCriticalSection::Leave() { (void)m_mutex.Unlock(); }
#endif
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------