Alexandre Julliard : kernel32: Make GetQueuedCompletionStatus return failure for I/O errors, as per MSDN.
Module: wine Branch: master Commit: e487b560d9a54a5f21274ca5722bb2b268b9424e URL: http://source.winehq.org/git/wine.git/?a=commit;h=e487b560d9a54a5f21274ca572... Author: Alexandre Julliard <julliard(a)winehq.org> Date: Tue Oct 27 16:52:35 2009 +0100 kernel32: Make GetQueuedCompletionStatus return failure for I/O errors, as per MSDN. --- dlls/kernel32/sync.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/dlls/kernel32/sync.c b/dlls/kernel32/sync.c index be73c98..8330d4a 100644 --- a/dlls/kernel32/sync.c +++ b/dlls/kernel32/sync.c @@ -2127,7 +2127,9 @@ BOOL WINAPI GetQueuedCompletionStatus( HANDLE CompletionPort, LPDWORD lpNumberOf if (status == STATUS_SUCCESS) { *lpNumberOfBytesTransferred = iosb.Information; - return TRUE; + if (iosb.u.Status >= 0) return TRUE; + SetLastError( RtlNtStatusToDosError(iosb.u.Status) ); + return FALSE; } if (status == STATUS_TIMEOUT) SetLastError( WAIT_TIMEOUT );
participants (1)
-
Alexandre Julliard