]> git.saurik.com Git - wxWidgets.git/blobdiff - src/unix/threadpsx.cpp
Fixed remaining int vs. long warnings.
[wxWidgets.git] / src / unix / threadpsx.cpp
index 5bbb54a77826457f2ea1dc0bfbd0491a617e2add..c9915fa3b44d2e716c9b9344a39faff28b0d58b6 100644 (file)
@@ -135,7 +135,7 @@ static pthread_key_t gs_keySelf;
 static size_t gs_nThreadsBeingDeleted = 0;
 
 // a mutex to protect gs_nThreadsBeingDeleted
-static pthread_mutex_t gs_mutexDeleteThread = PTHREAD_MUTEX_INITIALIZER;
+static pthread_mutex_t gs_mutexDeleteThread;
 
 // and a condition variable which will be signaled when all
 // gs_nThreadsBeingDeleted will have been deleted
@@ -835,7 +835,9 @@ bool wxThread::IsMain()
 
 void wxThread::Yield()
 {
+#ifdef HAVE_SCHED_YIELD
     sched_yield();
+#endif
 }
 
 void wxThread::Sleep(unsigned long milliseconds)
@@ -1449,6 +1451,10 @@ bool wxThreadModule::OnInit()
     gs_mutexGui->Lock();
 #endif // wxUSE_GUI
 
+    // under Solaris we get a warning from CC when using
+    // PTHREAD_MUTEX_INITIALIZER, so do it dynamically
+    pthread_mutex_init(&gs_mutexDeleteThread, NULL);
+
     return TRUE;
 }