diff --git a/src/syscall/syscall_windows.go b/src/syscall/syscall_windows.go index 5310f2da80b..ee5311b176b 100644 --- a/src/syscall/syscall_windows.go +++ b/src/syscall/syscall_windows.go @@ -1229,6 +1229,9 @@ func GetQueuedCompletionStatus(cphandle Handle, qty *uint32, key *uint32, overla err := getQueuedCompletionStatus(cphandle, qty, pukey, overlapped, timeout) if key != nil { *key = uint32(ukey) + if uintptr(*key) != ukey && err == nil { + err = errorspkg.New("GetQueuedCompletionStatus returned key overflow") + } } return err }