[PATCH 1/5] ntdll: Use a fixed block tail size.

Rémi Bernon wine at gitlab.winehq.org
Mon May 30 03:04:07 CDT 2022


From: Rémi Bernon <rbernon at codeweavers.com>

Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
---
 dlls/ntdll/heap.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlls/ntdll/heap.c b/dlls/ntdll/heap.c
index 16abc158e55..2b390bfed7d 100644
--- a/dlls/ntdll/heap.c
+++ b/dlls/ntdll/heap.c
@@ -1176,7 +1176,7 @@ static BOOL validate_used_block( const SUBHEAP *subheap, const struct block *blo
     else if (!err && (flags & HEAP_TAIL_CHECKING_ENABLED))
     {
         const unsigned char *tail = (unsigned char *)block + block_get_size( block ) - block->unused_bytes;
-        for (i = 0; !err && i < block->unused_bytes; i++) if (tail[i] != ARENA_TAIL_FILLER) err = "invalid block tail";
+        for (i = 0; !err && i < ALIGNMENT; i++) if (tail[i] != ARENA_TAIL_FILLER) err = "invalid block tail";
     }
 
     if (err)
@@ -1343,7 +1343,7 @@ static void heap_set_debug_flags( HANDLE handle )
                 else
                 {
                     if (block_get_type( block ) == ARENA_PENDING_MAGIC) mark_block_free( block + 1, block_get_size( block ) - sizeof(*block), flags );
-                    else mark_block_tail( (char *)block + block_get_size( block ) - block->unused_bytes, block->unused_bytes, flags );
+                    else mark_block_tail( (char *)block + block_get_size( block ) - block->unused_bytes, ALIGNMENT, flags );
                 }
             }
         }
@@ -1628,8 +1628,8 @@ static NTSTATUS heap_reallocate( HEAP *heap, ULONG flags, void *ptr, SIZE_T size
 
     /* Clear the extra bytes if needed */
 
-    if (size <= old_size) mark_block_tail( (char *)(block + 1) + size, block->unused_bytes, flags );
-    else initialize_block( (char *)(block + 1) + old_size, size - old_size, block->unused_bytes, flags );
+    if (size <= old_size) mark_block_tail( (char *)(block + 1) + size, ALIGNMENT, flags );
+    else initialize_block( (char *)(block + 1) + old_size, size - old_size, ALIGNMENT, flags );
 
     /* Return the new arena */
 
-- 
GitLab


https://gitlab.winehq.org/wine/wine/-/merge_requests/151



More information about the wine-devel mailing list