diff --git a/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/MemoryAllocationLib.c b/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/MemoryAllocationLib.c index 7f15ec0be9..2f96468cac 100644 --- a/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/MemoryAllocationLib.c +++ b/MdeModulePkg/Library/DxeCoreMemoryAllocationLib/MemoryAllocationLib.c @@ -661,9 +661,8 @@ AllocateReservedCopyPool ( If NewSize is 0, then a valid buffer of 0 size is returned. If there is not enough memory remaining to satisfy the request, then NULL is returned. - If OldBuffer is NULL, then ASSERT(). - If NewSize is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). - If OldSize is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). + If the smaller of NewSize and OldSize is greater than (MAX_ADDRESS - OldBuffer + 1), + then ASSERT(). @param PoolType The type of pool to allocate. @param OldSize The size, in bytes, of OldBuffer. @@ -684,7 +683,7 @@ InternalReallocatePool ( { VOID *NewBuffer; - NewBuffer = AllocateZeroPool (NewSize); + NewBuffer = InternalAllocateZeroPool (PoolType, NewSize); if (NewBuffer != NULL && OldBuffer != NULL) { CopyMem (NewBuffer, OldBuffer, MIN (OldSize, NewSize)); FreePool (OldBuffer); @@ -702,8 +701,8 @@ InternalReallocatePool ( If NewSize is 0, then a valid buffer of 0 size is returned. If there is not enough memory remaining to satisfy the request, then NULL is returned. - If NewSize is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). - If OldSize is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). + If the smaller of NewSize and OldSize is greater than (MAX_ADDRESS - OldBuffer + 1), + then ASSERT(). @param OldSize The size, in bytes, of OldBuffer. @param NewSize The size, in bytes, of the buffer to reallocate. @@ -734,8 +733,8 @@ ReallocatePool ( If NewSize is 0, then a valid buffer of 0 size is returned. If there is not enough memory remaining to satisfy the request, then NULL is returned. - If NewSize is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). - If OldSize is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). + If the smaller of NewSize and OldSize is greater than (MAX_ADDRESS - OldBuffer + 1), + then ASSERT(). @param OldSize The size, in bytes, of OldBuffer. @param NewSize The size, in bytes, of the buffer to reallocate. @@ -766,8 +765,8 @@ ReallocateRuntimePool ( If NewSize is 0, then a valid buffer of 0 size is returned. If there is not enough memory remaining to satisfy the request, then NULL is returned. - If NewSize is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). - If OldSize is greater than (MAX_ADDRESS - Buffer + 1), then ASSERT(). + If the smaller of NewSize and OldSize is greater than (MAX_ADDRESS - OldBuffer + 1), + then ASSERT(). @param OldSize The size, in bytes, of OldBuffer. @param NewSize The size, in bytes, of the buffer to reallocate.