X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2Fwin32%2FTicker.c;h=7701a3b2755c0b53e7b4a8b296dcb2539cc1ecb5;hb=7e03b5b7cfd72c651444856fe83b429da0734ec2;hp=9fa40ebe52abf6c42db82a5e96367ccf85d56f05;hpb=610de7d17e09318272b7516bd9b97e8b2cbd170c;p=ghc-hetmet.git diff --git a/rts/win32/Ticker.c b/rts/win32/Ticker.c index 9fa40eb..7701a3b 100644 --- a/rts/win32/Ticker.c +++ b/rts/win32/Ticker.c @@ -54,6 +54,7 @@ TimerProc(PVOID param) /* event has become signalled */ tickProc = NULL; CloseHandle(hStopEvent); + hStopEvent = INVALID_HANDLE_VALUE; return 0; case WAIT_TIMEOUT: /* tick */ @@ -115,7 +116,10 @@ stopTicker(void) } if (exitCode != STILL_ACTIVE) { tickThread = INVALID_HANDLE_VALUE; - CloseHandle(hStopEvent); + if ( hStopEvent != INVALID_HANDLE_VALUE ) { + CloseHandle(hStopEvent); + hStopEvent = INVALID_HANDLE_VALUE; + } return 0; } TerminateThread(tickThread, 0);