Applied patch [ 1336712 ] Fix segfault when calling wxThread::Exit()
By bdonner git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
8db1a709bc
commit
b486658282
@ -818,6 +818,7 @@ extern "C" void wxPthreadCleanup(void *ptr)
|
||||
|
||||
void wxThreadInternal::Cleanup(wxThread *thread)
|
||||
{
|
||||
if (pthread_getspecific(gs_keySelf) == 0) return;
|
||||
{
|
||||
wxCriticalSectionLocker lock(thread->m_critsect);
|
||||
if ( thread->m_internal->GetState() == STATE_EXITED )
|
||||
@ -1481,6 +1482,7 @@ void wxThread::Exit(ExitCode status)
|
||||
// we make it a global object, but this would mean that we can
|
||||
// only call one thread function at a time :-(
|
||||
DeleteThread(this);
|
||||
pthread_setspecific(gs_keySelf, 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user