Alexandre Julliard : kernelbase: Redirect heap allocation functions to ntdll.
Alexandre Julliard
julliard at winehq.org
Wed Dec 11 16:35:08 CST 2019
Module: wine
Branch: master
Commit: 22b225083415a0c930abedd30b3cd823f6242c67
URL: https://source.winehq.org/git/wine.git/?a=commit;h=22b225083415a0c930abedd30b3cd823f6242c67
Author: Alexandre Julliard <julliard at winehq.org>
Date: Wed Dec 11 22:21:17 2019 +0100
kernelbase: Redirect heap allocation functions to ntdll.
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/kernelbase/kernelbase.h | 5 +++++
dlls/kernelbase/kernelbase.spec | 2 +-
dlls/kernelbase/main.c | 2 +-
dlls/kernelbase/path.c | 1 +
dlls/kernelbase/string.c | 1 +
5 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/dlls/kernelbase/kernelbase.h b/dlls/kernelbase/kernelbase.h
index d7de53c412..459ae88c71 100644
--- a/dlls/kernelbase/kernelbase.h
+++ b/dlls/kernelbase/kernelbase.h
@@ -54,4 +54,9 @@ static inline BOOL set_ntstatus( NTSTATUS status )
return !status;
}
+/* make the kernel32 names available */
+#define HeapAlloc(heap, flags, size) RtlAllocateHeap(heap, flags, size)
+#define HeapReAlloc(heap, flags, ptr, size) RtlReAllocateHeap(heap, flags, ptr, size)
+#define HeapFree(heap, flags, ptr) RtlFreeHeap(heap, flags, ptr)
+
#endif /* __WINE_KERNELBASE_H */
diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec
index 032e379dc0..8e5e81d564 100644
--- a/dlls/kernelbase/kernelbase.spec
+++ b/dlls/kernelbase/kernelbase.spec
@@ -775,7 +775,7 @@
@ stdcall HeapCompact(long long)
@ stdcall HeapCreate(long long long)
@ stdcall HeapDestroy(long)
-@ stdcall HeapFree(long long ptr)
+@ stdcall HeapFree(long long ptr) ntdll.RtlFreeHeap
@ stdcall HeapLock(long)
@ stdcall HeapQueryInformation(long long ptr long ptr)
@ stdcall HeapReAlloc(long long ptr long) ntdll.RtlReAllocateHeap
diff --git a/dlls/kernelbase/main.c b/dlls/kernelbase/main.c
index b735e7dee9..1c8c83d229 100644
--- a/dlls/kernelbase/main.c
+++ b/dlls/kernelbase/main.c
@@ -28,8 +28,8 @@
#include "winternl.h"
#include "wine/debug.h"
-#include "wine/heap.h"
#include "kernelbase.h"
+#include "wine/heap.h"
WINE_DEFAULT_DEBUG_CHANNEL(kernelbase);
diff --git a/dlls/kernelbase/path.c b/dlls/kernelbase/path.c
index e9182a764d..23476694db 100644
--- a/dlls/kernelbase/path.c
+++ b/dlls/kernelbase/path.c
@@ -29,6 +29,7 @@
#include "intshcut.h"
#include "winternl.h"
+#include "kernelbase.h"
#include "wine/debug.h"
#include "wine/heap.h"
diff --git a/dlls/kernelbase/string.c b/dlls/kernelbase/string.c
index 9a4d8c0827..7c484e2858 100644
--- a/dlls/kernelbase/string.c
+++ b/dlls/kernelbase/string.c
@@ -24,6 +24,7 @@
#include "shlwapi.h"
#include "winternl.h"
+#include "kernelbase.h"
#include "wine/debug.h"
#include "wine/exception.h"
More information about the wine-cvs
mailing list