Module: wine Branch: master Commit: 534ec7f5fbf56750abcc3c692960eca1122294fd URL: http://source.winehq.org/git/wine.git/?a=commit;h=534ec7f5fbf56750abcc3c6929...
Author: Jacek Caban jacek@codeweavers.com Date: Thu Jan 26 00:51:58 2017 +0100
ntdll: Always set iosb->Information in irp_completion.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/ntdll/file.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c index 907c2aa..c7669ee 100644 --- a/dlls/ntdll/file.c +++ b/dlls/ntdll/file.c @@ -417,6 +417,7 @@ static struct async_fileio *alloc_fileio( DWORD size, HANDLE handle, PIO_APC_ROU static NTSTATUS irp_completion( void *user, IO_STATUS_BLOCK *io, NTSTATUS status, void **apc, void **arg ) { struct async_irp *async = user; + ULONG information = 0;
if (status == STATUS_ALERTED) { @@ -425,13 +426,14 @@ static NTSTATUS irp_completion( void *user, IO_STATUS_BLOCK *io, NTSTATUS status req->user_arg = wine_server_client_ptr( async ); wine_server_set_reply( req, async->buffer, async->size ); status = wine_server_call( req ); - if (status != STATUS_PENDING) io->Information = reply->size; + information = reply->size; } SERVER_END_REQ; } if (status != STATUS_PENDING) { io->u.Status = status; + io->Information = information; *apc = async->io.apc; *arg = async->io.apc_arg; release_fileio( &async->io );