Updated ntdll-WRITECOPY patchset

This extra patch allows Battle.net once again.
This commit is contained in:
Alistair Leslie-Hughes 2024-04-05 07:56:29 +11:00
parent ac31c3f5c5
commit 9d59c4b21a

View File

@ -0,0 +1,28 @@
From 321e3228c6c28256bfb209efdc372b61f9c8535f Mon Sep 17 00:00:00 2001
From: Fabian Maurer <dark.shadow4@web.de>
Date: Thu, 21 Dec 2023 20:09:23 +0100
Subject: [PATCH] kernelbase: Correct return value in VirtualProtect for
PAGE_WRITECOPY
---
dlls/kernelbase/memory.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/dlls/kernelbase/memory.c b/dlls/kernelbase/memory.c
index 4f4bba9a13b..de42395b33b 100644
--- a/dlls/kernelbase/memory.c
+++ b/dlls/kernelbase/memory.c
@@ -481,7 +481,9 @@ BOOL WINAPI DECLSPEC_HOTPATCH VirtualLock( void *addr, SIZE_T size )
*/
BOOL WINAPI DECLSPEC_HOTPATCH VirtualProtect( void *addr, SIZE_T size, DWORD new_prot, DWORD *old_prot )
{
- return VirtualProtectEx( GetCurrentProcess(), addr, size, new_prot, old_prot );
+ BOOL ret = VirtualProtectEx( GetCurrentProcess(), addr, size, new_prot, old_prot );
+ if (*old_prot == PAGE_WRITECOPY) *old_prot = PAGE_READWRITE;
+ return ret;
}
--
2.43.0