ntdll: Give earlier notify to valgrind that HeapFree is trying to free some memory.

This commit is contained in:
Maarten Lankhorst 2008-05-21 15:29:31 -07:00 committed by Alexandre Julliard
parent bd58463eda
commit a9a852faa9

View File

@ -1280,8 +1280,10 @@ BOOLEAN WINAPI RtlFreeHeap( HANDLE heap, ULONG flags, PVOID ptr )
flags |= heapPtr->flags;
if (!(flags & HEAP_NO_SERIALIZE)) RtlEnterCriticalSection( &heapPtr->critSection );
/* Some sanity checks */
/* Inform valgrind we are trying to free memory, so it can throw up an error message */
notify_free( ptr );
/* Some sanity checks */
pInUse = (ARENA_INUSE *)ptr - 1;
if (!(subheap = HEAP_FindSubHeap( heapPtr, pInUse ))) goto error;
if ((char *)pInUse < (char *)subheap->base + subheap->headerSize) goto error;
@ -1289,8 +1291,6 @@ BOOLEAN WINAPI RtlFreeHeap( HANDLE heap, ULONG flags, PVOID ptr )
/* Turn the block into a free block */
notify_free( ptr );
HEAP_MakeInUseBlockFree( subheap, pInUse );
if (!(flags & HEAP_NO_SERIALIZE)) RtlLeaveCriticalSection( &heapPtr->critSection );