Jacek Caban : ntdll: Always set iosb->Information in irp_completion.

Alexandre Julliard julliard at winehq.org
Wed Feb 1 15:26:10 CST 2017


Module: wine
Branch: master
Commit: 534ec7f5fbf56750abcc3c692960eca1122294fd
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=534ec7f5fbf56750abcc3c692960eca1122294fd

Author: Jacek Caban <jacek at 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 at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at 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 );




More information about the wine-cvs mailing list