From 10fe0d814add860a1040e648b1f5782c0de350e6 Mon Sep 17 00:00:00 2001 From: niruiyu Date: Thu, 9 Jun 2011 02:01:19 +0000 Subject: [PATCH] Fix crash in GetMemoryMap() when memory type 0x80000000-0xFFFFFFFF was allocated by OS loader Signed-off-by: niruiyu Reviewed-by: lgao4 Reviewed-by: hhtian git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11774 6f19259b-4bc3-4df7-8a09-765794883524 --- MdeModulePkg/Core/Dxe/Mem/Page.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/MdeModulePkg/Core/Dxe/Mem/Page.c b/MdeModulePkg/Core/Dxe/Mem/Page.c index e415a896cd..04844e3305 100644 --- a/MdeModulePkg/Core/Dxe/Mem/Page.c +++ b/MdeModulePkg/Core/Dxe/Mem/Page.c @@ -1464,8 +1464,10 @@ CoreGetMemoryMap ( } } MemoryMap->Attribute = Entry->Attribute; - if (mMemoryTypeStatistics[MemoryMap->Type].Runtime) { - MemoryMap->Attribute |= EFI_MEMORY_RUNTIME; + if (MemoryMap->Type < EfiMaxMemoryType) { + if (mMemoryTypeStatistics[MemoryMap->Type].Runtime) { + MemoryMap->Attribute |= EFI_MEMORY_RUNTIME; + } } // -- 2.39.2