Alexandre Julliard : ntdll: Compute the wait timeout only once in NTDLL_wait_for_multiple_objects.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Jan 10 15:47:05 CST 2007


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

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Wed Jan 10 20:44:35 2007 +0100

ntdll: Compute the wait timeout only once in NTDLL_wait_for_multiple_objects.

---

 dlls/ntdll/sync.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/dlls/ntdll/sync.c b/dlls/ntdll/sync.c
index 3447ae9..1d07ba7 100644
--- a/dlls/ntdll/sync.c
+++ b/dlls/ntdll/sync.c
@@ -715,7 +715,9 @@ NTSTATUS NTDLL_wait_for_multiple_objects
 {
     NTSTATUS ret;
     int cookie;
+    abs_time_t abs_timeout;
 
+    NTDLL_get_server_abstime( &abs_timeout, timeout );
     if (timeout) flags |= SELECT_TIMEOUT;
     for (;;)
     {
@@ -724,7 +726,7 @@ NTSTATUS NTDLL_wait_for_multiple_objects
             req->flags   = flags;
             req->cookie  = &cookie;
             req->signal  = signal_object;
-            NTDLL_get_server_abstime( &req->timeout, timeout );
+            req->timeout = abs_timeout;
             wine_server_add_data( req, handles, count * sizeof(HANDLE) );
             ret = wine_server_call( req );
         }




More information about the wine-cvs mailing list