Module: wine Branch: master Commit: e81d453f636b950c1bb16fec782ff26a019ee97a URL: http://source.winehq.org/git/wine.git/?a=commit;h=e81d453f636b950c1bb16fec78...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Dec 11 20:38:21 2008 +0100
ntdll: Convert the handles to server handles in NTDLL_wait_for_multiple_objects.
---
dlls/ntdll/sync.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/dlls/ntdll/sync.c b/dlls/ntdll/sync.c index 0cfe893..bad6eab 100644 --- a/dlls/ntdll/sync.c +++ b/dlls/ntdll/sync.c @@ -1037,14 +1037,16 @@ NTSTATUS NTDLL_wait_for_multiple_objects( UINT count, const HANDLE *handles, UIN const LARGE_INTEGER *timeout, HANDLE signal_object ) { NTSTATUS ret; - int cookie; + int i, cookie; BOOL user_apc = FALSE; + obj_handle_t obj_handles[MAXIMUM_WAIT_OBJECTS]; obj_handle_t apc_handle = 0; apc_call_t call; apc_result_t result; timeout_t abs_timeout = timeout ? timeout->QuadPart : TIMEOUT_INFINITE;
memset( &result, 0, sizeof(result) ); + for (i = 0; i < count; i++) obj_handles[i] = wine_server_obj_handle( handles[i] );
for (;;) { @@ -1056,7 +1058,7 @@ NTSTATUS NTDLL_wait_for_multiple_objects( UINT count, const HANDLE *handles, UIN req->prev_apc = apc_handle; req->timeout = abs_timeout; wine_server_add_data( req, &result, sizeof(result) ); - wine_server_add_data( req, handles, count * sizeof(HANDLE) ); + wine_server_add_data( req, obj_handles, count * sizeof(*obj_handles) ); ret = wine_server_call( req ); abs_timeout = reply->timeout; apc_handle = reply->apc_handle;