]> git.saurik.com Git - wxWidgets.git/commitdiff
Set state of internal thread object upon ::Exit
authorRobert Roebling <robert@roebling.de>
Mon, 31 Jan 2005 17:55:20 +0000 (17:55 +0000)
committerRobert Roebling <robert@roebling.de>
Mon, 31 Jan 2005 17:55:20 +0000 (17:55 +0000)
    to EXITED. This is consistent with MSW and
    fixes a crash with double deletion.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/unix/threadpsx.cpp

index 3da088548daaf881646ef59286630d172693e54c..8365dfc5ebd5fac7ddc0a570052e23e8ecebceb9 100644 (file)
@@ -1483,6 +1483,12 @@ void wxThread::Exit(ExitCode status)
         //       only call one thread function at a time :-(
         DeleteThread(this);
     }
+    else
+    {
+        m_critsect.Enter();
+        m_internal->SetState(STATE_EXITED);
+        m_critsect.Leave();
+    }
 
     // terminate the thread (pthread_exit() never returns)
     pthread_exit(status);