nbio(windows): explicitly set entries_removed = 0 when GetQueuedCompletionStatusEx returns false

This commit is contained in:
laytan
2026-01-17 19:22:09 +01:00
parent d46c547264
commit 44aabdbcda

View File

@@ -183,8 +183,12 @@ __tick :: proc(l: ^Event_Loop, timeout: time.Duration) -> (err: General_Error) {
events: [QUEUE_SIZE]win.OVERLAPPED_ENTRY
entries_removed: win.ULONG
if !win.GetQueuedCompletionStatusEx(l.iocp, &events[0], len(events), &entries_removed, actual_timeout, false) {
if terr := win.GetLastError(); terr != win.WAIT_TIMEOUT {
err = General_Error(terr)
winerr := win.GetLastError()
switch winerr {
case win.WAIT_TIMEOUT:
entries_removed = 0
case:
err = General_Error(winerr)
return
}
}