diff options
author | Tamar Christina <tamar@zhox.com> | 2019-11-17 21:21:51 +0000 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2020-07-15 16:41:02 -0400 |
commit | ccf0d1073969e3b73fed82cd421d74800f552953 (patch) | |
tree | 2efcd4acecce82fc2fdb566161d82e30d3e83caa /rts | |
parent | 84ea3d1492127442e2d416f1f576a5921186ada4 (diff) | |
download | haskell-ccf0d1073969e3b73fed82cd421d74800f552953.tar.gz |
winio: Fix issues with non-threaded I/O manager after split.
Diffstat (limited to 'rts')
-rw-r--r-- | rts/win32/AsyncWinIO.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/rts/win32/AsyncWinIO.c b/rts/win32/AsyncWinIO.c index 2b6a44ee39..19e30fe1d1 100644 --- a/rts/win32/AsyncWinIO.c +++ b/rts/win32/AsyncWinIO.c @@ -308,6 +308,9 @@ void awaitAsyncRequests (bool wait) timeslice in between. */ if (wait && outstanding_service_requests) SleepConditionVariableSRW (&threadIOWait, &lock, INFINITE, 0); + else if (wait && !outstanding_service_requests) + barf ("asked to wait for I/O but no I/O action is pending."); + ReleaseSRWLockExclusive (&lock); } |