From 3c4b46ea6248dbeeb6b3b5e82f80bb3572e50bff Mon Sep 17 00:00:00 2001 From: Pierre Schweitzer Date: Sun, 5 May 2013 16:38:41 +0000 Subject: [PATCH] [KERNEL32] If you workaround RtlAcquirePrivilege, do it properly! Will prevent bad address freeing... svn path=/trunk/; revision=58945 --- reactos/dll/win32/kernel32/client/time.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/reactos/dll/win32/kernel32/client/time.c b/reactos/dll/win32/kernel32/client/time.c index 44516d4b6ee..1302d3ca068 100644 --- a/reactos/dll/win32/kernel32/client/time.c +++ b/reactos/dll/win32/kernel32/client/time.c @@ -379,12 +379,16 @@ SetLocalTime(IN CONST SYSTEMTIME *lpSystemTime) NewSystemTime.QuadPart += TimeZoneBias.QuadPart; Status = RtlAcquirePrivilege(&Privilege, 1, 0, &State); - Status = STATUS_SUCCESS; if (NT_SUCCESS(Status)) { Status = NtSetSystemTime(&NewSystemTime, NULL); RtlReleasePrivilege(State); } + else + { + DPRINT1("Workaround RtlAcquirePrivilege failure!\n"); + Status = NtSetSystemTime(&NewSystemTime, NULL); + } if (!NT_SUCCESS(Status)) {