diff options
Diffstat (limited to 'src/threadengines/threadengine_win32.cpp')
-rw-r--r-- | src/threadengines/threadengine_win32.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/threadengines/threadengine_win32.cpp b/src/threadengines/threadengine_win32.cpp index b67f01681..8fb103267 100644 --- a/src/threadengines/threadengine_win32.cpp +++ b/src/threadengines/threadengine_win32.cpp @@ -7,9 +7,7 @@ static DWORD WINAPI entry_point(void *parameter) { Thread *thread = static_cast<Thread *>(parameter); thread->Run(); - if (!thread->GetExitState()) - thread->Join(); - delete thread; + thread->SetExitState(); return 0; } @@ -29,7 +27,7 @@ ThreadEngine::~ThreadEngine() */ void Thread::Join() { - SetExitState(); + this->SetExitState(); WaitForSingleObject(Handle, INFINITE); } |