summaryrefslogtreecommitdiff
path: root/rts/win32/AsyncIO.c
diff options
context:
space:
mode:
authorSimon Marlow <simonmar@microsoft.com>2006-08-30 12:31:31 +0000
committerSimon Marlow <simonmar@microsoft.com>2006-08-30 12:31:31 +0000
commitee4d9a57ab125607e3029a8c1d052114956811f5 (patch)
treeb7f29d320b194fd13f49eb19854f7ec9bc766a60 /rts/win32/AsyncIO.c
parent7ee5c6affd10895ddc3b1e09550069391faaa40a (diff)
downloadhaskell-ee4d9a57ab125607e3029a8c1d052114956811f5.tar.gz
call ShutdownIOManager() before closing handles
To avoid IO requests completing only to discover that the completed_table_sema has been CloseHandle()'d. This all looks a bit wrong, though: we shouldn't really be waiting for these requests to complete, they might take forever.
Diffstat (limited to 'rts/win32/AsyncIO.c')
-rw-r--r--rts/win32/AsyncIO.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/rts/win32/AsyncIO.c b/rts/win32/AsyncIO.c
index 3f99113b7f..d471ee8879 100644
--- a/rts/win32/AsyncIO.c
+++ b/rts/win32/AsyncIO.c
@@ -173,6 +173,7 @@ startupAsyncIO()
void
shutdownAsyncIO()
{
+ ShutdownIOManager();
if (completed_req_event != INVALID_HANDLE_VALUE) {
CloseHandle(completed_req_event);
completed_req_event = INVALID_HANDLE_VALUE;
@@ -185,7 +186,6 @@ shutdownAsyncIO()
CloseHandle(completed_table_sema);
completed_table_sema = NULL;
}
- ShutdownIOManager();
}
/*