]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/thread.cpp
incomplete paste error
[wxWidgets.git] / src / os2 / thread.cpp
index d1ee5dc364a051a7a0b29c2ab7698cd04d3da9e9..b17b17cb830e0751b3b636ddd0c597738cfff181 100644 (file)
@@ -354,7 +354,7 @@ public:
     {
         m_hThread = 0;
         m_eState = STATE_NEW;
     {
         m_hThread = 0;
         m_eState = STATE_NEW;
-        m_nPriority = WXTHREAD_DEFAULT_PRIORITY;
+        m_nPriority = wxPRIORITY_DEFAULT;
     }
 
     ~wxThreadInternal()
     }
 
     ~wxThreadInternal()
@@ -497,7 +497,7 @@ bool wxThreadInternal::Create( wxThread* pThread,
         return false;
     }
     m_hThread = tid;
         return false;
     }
     m_hThread = tid;
-    if (m_nPriority != WXTHREAD_DEFAULT_PRIORITY)
+    if (m_nPriority != wxPRIORITY_DEFAULT)
     {
         SetPriority(m_nPriority);
     }
     {
         SetPriority(m_nPriority);
     }
@@ -626,6 +626,14 @@ wxThreadError wxThread::Run()
 {
     wxCriticalSectionLocker         lock((wxCriticalSection &)m_critsect);
 
 {
     wxCriticalSectionLocker         lock((wxCriticalSection &)m_critsect);
 
+    // Create the thread if it wasn't created yet with an explicit
+    // Create() call:
+    if ( !m_internal->GetHandle() )
+    {
+        if ( !m_internal->Create(this, 0) )
+            return wxTHREAD_NO_RESOURCE;
+    }
+
     if ( m_internal->GetState() != STATE_NEW )
     {
         // actually, it may be almost any state at all, not only STATE_RUNNING
     if ( m_internal->GetState() != STATE_NEW )
     {
         // actually, it may be almost any state at all, not only STATE_RUNNING