[4/4] server: Propagate an error code returned by token_access_check() to the client. Resend.

Dmitry Timoshkov dmitry at baikal.ru
Tue Apr 17 03:02:45 CDT 2012


---
 dlls/kernel32/tests/sync.c |    2 +-
 server/token.c             |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/kernel32/tests/sync.c b/dlls/kernel32/tests/sync.c
index 2605b8f..011db0d 100644
--- a/dlls/kernel32/tests/sync.c
+++ b/dlls/kernel32/tests/sync.c
@@ -183,7 +183,7 @@ todo_wine
         else
         {
             if ((1 << i) == ACCESS_SYSTEM_SECURITY)
-                todo_wine ok(GetLastError() == ERROR_PRIVILEGE_NOT_HELD, "wrong error %u, access %x\n", GetLastError(), 1 << i);
+                ok(GetLastError() == ERROR_PRIVILEGE_NOT_HELD, "wrong error %u, access %x\n", GetLastError(), 1 << i);
             else
                 ok(GetLastError() == ERROR_ACCESS_DENIED, "wrong error %u, , access %x\n", GetLastError(), 1 << i);
             ReleaseMutex(hCreated);
diff --git a/server/token.c b/server/token.c
index bb39592..f59ebfa 100644
--- a/server/token.c
+++ b/server/token.c
@@ -1007,7 +1007,7 @@ int check_object_access(struct object *obj, unsigned int *access)
                               &mapping, access, &status ) == STATUS_SUCCESS &&
           status == STATUS_SUCCESS;
 
-    if (!res) set_error( STATUS_ACCESS_DENIED );
+    if (!res) set_error( status );
     return res;
 }
 
-- 
1.7.9.4




More information about the wine-patches mailing list