]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk1/threadno.cpp
Changed the "delete win" to the more proper "win->Destroy()" in
[wxWidgets.git] / src / gtk1 / threadno.cpp
index 3a1f3460c79ef1eebda8b8ab04a806ac84278126..ee844fbf0f8a33418bc01b6489da252fdbd31429 100644 (file)
@@ -15,6 +15,7 @@
 #include "wx/wx.h"
 #include "wx/module.h"
 #include "wx/thread.h"
+#include "wx/log.h"
 
 wxMutex::wxMutex()
 {
@@ -24,7 +25,7 @@ wxMutex::wxMutex()
 wxMutex::~wxMutex()
 {
   if (m_locked)
-    wxDebugMsg("wxMutex warning: destroying a locked mutex (%d locks)\n", m_locked);
+    wxLogDebug( "wxMutex warning: destroying a locked mutex (%d locks)\n", m_locked );
 }
 
 wxMutexError wxMutex::Lock()
@@ -138,7 +139,7 @@ bool wxThread::IsAlive() const
 void wxThread::SetPriority(int WXUNUSED(prio)) { }
 int wxThread::GetPriority() const { return 0; }
 
-wxMutex wxMainMutex; // controls access to all GUI functions
+wxMutex *wxMainMutex; // controls access to all GUI functions
 
 wxThread::wxThread()
 {
@@ -168,13 +169,15 @@ public:
 };
 
 bool wxThreadModule::OnInit() {
-  wxMainMutex.Lock();
+  wxMainMutex = new wxMutex();
+  wxMainMutex->Lock();
   return TRUE;
 }
 
 void wxThreadModule::OnExit()
 {
-  wxMainMutex.Unlock();
+  wxMainMutex->Unlock();
+  delete wxMainMutex;
 }
 
 IMPLEMENT_DYNAMIC_CLASS(wxThreadModule, wxModule)