Jacek Caban : ntdll: Use callback stored in async user for calling APC_ASYNC_IO.

Alexandre Julliard julliard at winehq.org
Tue Apr 11 15:31:04 CDT 2017


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

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Mon Apr 10 13:20:51 2017 +0200

ntdll: Use callback stored in async user for calling APC_ASYNC_IO.

Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/ntdll/server.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/dlls/ntdll/server.c b/dlls/ntdll/server.c
index ac3183b..ed77aa5 100644
--- a/dlls/ntdll/server.c
+++ b/dlls/ntdll/server.c
@@ -406,10 +406,9 @@ static BOOL invoke_apc( const apc_call_t *call, apc_result_t *result )
     {
         void *apc = NULL, *arg = NULL;
         IO_STATUS_BLOCK *iosb = wine_server_get_ptr( call->async_io.sb );
-        NTSTATUS (*func)(void *, IO_STATUS_BLOCK *, NTSTATUS, void **, void **) = wine_server_get_ptr( call->async_io.func );
+        NTSTATUS (**user)(void *, IO_STATUS_BLOCK *, NTSTATUS, void **, void **) = wine_server_get_ptr( call->async_io.user );
         result->type = call->type;
-        result->async_io.status = func( wine_server_get_ptr( call->async_io.user ),
-                                        iosb, call->async_io.status, &apc, &arg );
+        result->async_io.status = (*user)( user, iosb, call->async_io.status, &apc, &arg );
         if (result->async_io.status != STATUS_PENDING)
         {
             result->async_io.total = iosb->Information;




More information about the wine-cvs mailing list