[NTOSKRNL]
authorAmine Khaldi <amine.khaldi@reactos.org>
Tue, 10 Sep 2013 21:57:52 +0000 (21:57 +0000)
committerAmine Khaldi <amine.khaldi@reactos.org>
Tue, 10 Sep 2013 21:57:52 +0000 (21:57 +0000)
* Return the proper status when we attempt to illegally commit non-ARM3 section. We hit this assert with some kernel32 winetests (mainly loader and virtual). Brought to you by Alex Ionescu.

svn path=/trunk/; revision=60016

reactos/ntoskrnl/mm/ARM3/virtual.c

index fbda417..12075cc 100644 (file)
@@ -4095,7 +4095,12 @@ NtAllocateVirtualMemory(IN HANDLE ProcessHandle,
     // Make sure this is an ARM3 section
     //
     MemoryArea = MmLocateMemoryAreaByAddress(AddressSpace, (PVOID)PAGE_ROUND_DOWN(PBaseAddress));
-    ASSERT(MemoryArea->Type == MEMORY_AREA_OWNED_BY_ARM3);
+    if (MemoryArea->Type != MEMORY_AREA_OWNED_BY_ARM3)
+    {
+        DPRINT1("Illegal commit of non-ARM3 section!\n");
+        Status = STATUS_ALREADY_COMMITTED;
+        goto FailPath;
+    }
 
     // Is this a previously reserved section being committed? If so, enter the
     // special section path