From 7950562e9e7faf26a13fc542845462094f4fa875 Mon Sep 17 00:00:00 2001 From: Daniel Lehman Date: Tue, 3 May 2016 02:55:43 +0200 Subject: [PATCH] ntdll: Fix prev_count from NtReleaseMutant. Signed-off-by: Daniel Lehman Signed-off-by: Sebastian Lackner Signed-off-by: Alexandre Julliard --- dlls/ntdll/sync.c | 2 +- dlls/ntdll/tests/om.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dlls/ntdll/sync.c b/dlls/ntdll/sync.c index 46cbca78679..e949df62946 100644 --- a/dlls/ntdll/sync.c +++ b/dlls/ntdll/sync.c @@ -510,7 +510,7 @@ NTSTATUS WINAPI NtReleaseMutant( IN HANDLE handle, OUT PLONG prev_count OPTIONAL { req->handle = wine_server_obj_handle( handle ); status = wine_server_call( req ); - if (prev_count) *prev_count = reply->prev_count; + if (prev_count) *prev_count = 1 - reply->prev_count; } SERVER_END_REQ; return status; diff --git a/dlls/ntdll/tests/om.c b/dlls/ntdll/tests/om.c index 2bc4ccdcafd..64a16abb624 100644 --- a/dlls/ntdll/tests/om.c +++ b/dlls/ntdll/tests/om.c @@ -1942,12 +1942,12 @@ static void test_mutant(void) prev = 0xdeadbeef; status = pNtReleaseMutant(mutant, &prev); ok( status == STATUS_SUCCESS, "NtQueryRelease failed %08x\n", status ); - todo_wine ok( prev == -1, "NtQueryRelease failed, expected -1, got %d\n", prev ); + ok( prev == -1, "NtQueryRelease failed, expected -1, got %d\n", prev ); prev = 0xdeadbeef; status = pNtReleaseMutant(mutant, &prev); ok( status == STATUS_SUCCESS, "NtQueryRelease failed %08x\n", status ); - todo_wine ok( prev == 0, "NtQueryRelease failed, expected 0, got %d\n", prev ); + ok( prev == 0, "NtQueryRelease failed, expected 0, got %d\n", prev ); memset(&info, 0xcc, sizeof(info)); status = pNtQueryMutant(mutant, MutantBasicInformation, &info, sizeof(info), NULL);