X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/83624f79609f0d5e240c1f7d77d044bfff9702fc..6aab345b9d9037eb85735e446afde2fd87005be5:/src/gtk/threadsgi.cpp diff --git a/src/gtk/threadsgi.cpp b/src/gtk/threadsgi.cpp index 3b66071667..cc65251bb0 100644 --- a/src/gtk/threadsgi.cpp +++ b/src/gtk/threadsgi.cpp @@ -8,10 +8,13 @@ // Copyright: (c) Wolfram Gloger (1996, 1997); Guilhem Lavaux (1998) // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "thread.h" #endif +// For compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" + #include #include @@ -238,21 +241,32 @@ void wxThread::OnExit() } // Global initialization -class wxThreadModule : public wxModule { - DECLARE_DYNAMIC_CLASS(wxThreadModule) + +class wxThreadModule : public wxModule +{ public: - virtual bool OnInit() { + virtual bool OnInit(); + virtual void OnExit(); + +private: + DECLARE_DYNAMIC_CLASS(wxThreadModule) +}; + +IMPLEMENT_DYNAMIC_CLASS(wxThreadModule, wxModule) + +bool wxThreadModule::OnInit() +{ wxMainMutex = new wxMutex(); wxThreadGuiInit(); p_mainid = (int)getpid(); wxMainMutex->Lock(); - } + return TRUE; +} - virtual void OnExit() { +void wxThreadModule::OnExit() +{ wxMainMutex->Unlock(); wxThreadGuiExit(); delete wxMainMutex; - } -}; +} -IMPLEMENT_DYNAMIC_CLASS(wxThreadModule, wxModule)