Set state of internal thread object upon ::Exit

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
This commit is contained in:
Robert Roebling
2005-01-31 17:55:20 +00:00
parent 36f1f45649
commit 343b1669f3

View 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);