Alexandre Julliard : ntdll: Convert the handles to server handles in NTDLL_wait_for_multiple_objects.
Alexandre Julliard
julliard at winehq.org
Fri Dec 12 07:04:07 CST 2008
Module: wine
Branch: master
Commit: e81d453f636b950c1bb16fec782ff26a019ee97a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=e81d453f636b950c1bb16fec782ff26a019ee97a
Author: Alexandre Julliard <julliard at 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;
More information about the wine-cvs
mailing list