[NTOS/MM]

- When freeing virtual memory, correctly set the ending address of the shrunk memory area.
CORE-7467

svn path=/trunk/; revision=63616
This commit is contained in:
Jérôme Gardou 2014-06-18 18:32:46 +00:00
parent aa7c4d673d
commit c75e046831

View file

@ -5336,7 +5336,7 @@ NtFreeVirtualMemory(IN HANDLE ProcessHandle,
ASSERT(Vad->StartingVpn << PAGE_SHIFT == (ULONG_PTR)MemoryArea->StartingAddress); ASSERT(Vad->StartingVpn << PAGE_SHIFT == (ULONG_PTR)MemoryArea->StartingAddress);
ASSERT((Vad->EndingVpn + 1) << PAGE_SHIFT == (ULONG_PTR)MemoryArea->EndingAddress); ASSERT((Vad->EndingVpn + 1) << PAGE_SHIFT == (ULONG_PTR)MemoryArea->EndingAddress);
Vad->EndingVpn = ((ULONG_PTR)StartingAddress - 1) >> PAGE_SHIFT; Vad->EndingVpn = ((ULONG_PTR)StartingAddress - 1) >> PAGE_SHIFT;
MemoryArea->EndingAddress = (PVOID)(((Vad->EndingVpn + 1) << PAGE_SHIFT) - 1); MemoryArea->EndingAddress = (PVOID)(StartingAddress);
} }
else else
{ {