(svn r2807) Fix two major bugs in the threaded save code:

- Do not dereference a local variable which no longer exists; this lead to random crashes when saving
- (Win32) Do not close a handle before it is used last
There are still many major problems (race conditions and resulting memory corruption/crashes) left
This commit is contained in:
tron
2005-08-05 08:24:12 +00:00
parent 647fe2e866
commit a86e9689df
5 changed files with 3 additions and 19 deletions

View File

@@ -1204,16 +1204,12 @@ bool CreateOTTDThread(void *func, void *param)
return hThread != NULL;
}
void CloseOTTDThread(void)
{
if (!CloseHandle(hThread)) DEBUG(misc, 0) ("Failed to close thread?...");
}
void JoinOTTDThread(void)
{
if (hThread == NULL) return;
WaitForSingleObject(hThread, INFINITE);
if (!CloseHandle(hThread)) DEBUG(misc, 0) ("Failed to close thread handle!");
}