Win64 patch 11/13

Ge van Geldorp ge at gse.nl
Mon Jun 19 13:03:48 CDT 2006


Changelog:
  Ge van Geldorp <ge at gse.nl>
  - Make heap work for Win64

Index: dlls/ntdll/heap.c
===================================================================
RCS file: /home/wine/wine/dlls/ntdll/heap.c,v
retrieving revision 1.53
diff -u -r1.53 heap.c
--- dlls/ntdll/heap.c	28 Nov 2005 20:10:41 -0000	1.53
+++ dlls/ntdll/heap.c	19 Jun 2006 17:44:49 -0000
@@ -84,7 +84,15 @@
 #define NOISY                  0           /* Report all errors  */
 
 /* minimum data size (without arenas) of an allocated block */
+#ifdef _WIN64
+/* The size of the "entry" member in ARENA_FREE is 16 bytes on _WIN64. If we set
+   HEAP_MIN_DATA_SIZE to 16, it's possible that the FREE_LIST_ENTRYs themselves
+   would be used when a request for <= 16 bytes comes in. Setting the value
+   a bit higher prevents that */
+#define HEAP_MIN_DATA_SIZE    24
+#else /* _WIN64 */
 #define HEAP_MIN_DATA_SIZE    16
+#endif /* _WIN64 */
 /* minimum size that must remain to shrink an allocated block */
 #define HEAP_MIN_SHRINK_SIZE  (HEAP_MIN_DATA_SIZE+sizeof(ARENA_FREE))
 



More information about the wine-patches mailing list