Update to use ReallocatePool() from BaseMemoryLib

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6678 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
mdkinney 2008-11-22 00:52:53 +00:00
parent d777486198
commit c46484952a
3 changed files with 11 additions and 93 deletions

View File

@ -1749,8 +1749,6 @@ ConSplitterGrowBuffer (
IN OUT VOID **Buffer
)
{
UINTN NewSize;
UINTN OldSize;
VOID *Ptr;
//
@ -1758,23 +1756,16 @@ ConSplitterGrowBuffer (
// copy the old buffer's content to the new-size buffer,
// then free the old buffer.
//
OldSize = *Count * SizeOfCount;
*Count += CONSOLE_SPLITTER_CONSOLES_ALLOC_UNIT;
NewSize = *Count * SizeOfCount;
Ptr = AllocateZeroPool (NewSize);
Ptr = ReallocatePool (
SizeOfCount * ((*Count) - CONSOLE_SPLITTER_CONSOLES_ALLOC_UNIT),
SizeOfCount * (*Count),
*Buffer
);
if (Ptr == NULL) {
return EFI_OUT_OF_RESOURCES;
}
CopyMem (Ptr, *Buffer, OldSize);
if (*Buffer != NULL) {
FreePool (*Buffer);
}
*Buffer = Ptr;
return EFI_SUCCESS;
}

View File

@ -14,41 +14,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include "DevicePath.h"
/**
Adjusts the size of a previously allocated buffer.
@param OldPool A pointer to the buffer whose size is being adjusted.
@param OldSize The size of the current buffer.
@param NewSize The size of the new buffer.
@return A pointer to the new buffer or NULL if allocation fails.
**/
VOID *
ReallocatePool (
IN VOID *OldPool,
IN UINTN OldSize,
IN UINTN NewSize
)
{
VOID *NewPool;
NewPool = NULL;
if (NewSize != 0) {
NewPool = AllocateZeroPool (NewSize);
}
if (OldPool != NULL) {
if (NewPool != NULL) {
CopyMem (NewPool, OldPool, OldSize < NewSize ? OldSize : NewSize);
}
FreePool (OldPool);
}
return NewPool;
}
/**
Concatenates a formatted unicode string to allocated pool. The caller must
free the resulting buffer.
@ -90,9 +55,9 @@ CatPrint (
Size = StrSize (AppendStr) - sizeof (UINT16);
Size = Size + StrSize (Str->Str);
Str->Str = ReallocatePool (
Str->Str,
StrSize (Str->Str),
Size
Size,
Str->Str
);
ASSERT (Str->Str != NULL);
}
@ -1752,7 +1717,7 @@ ConvertDeviceNodeToText (
// Shrink pool used for string allocation
//
NewSize = (Str.Len + 1) * sizeof (CHAR16);
Str.Str = ReallocatePool (Str.Str, NewSize, NewSize);
Str.Str = ReallocatePool (NewSize, NewSize, Str.Str);
ASSERT (Str.Str != NULL);
Str.Str[Str.Len] = 0;
return Str.Str;
@ -1841,7 +1806,7 @@ ConvertDevicePathToText (
}
NewSize = (Str.Len + 1) * sizeof (CHAR16);
Str.Str = ReallocatePool (Str.Str, NewSize, NewSize);
Str.Str = ReallocatePool (NewSize, NewSize, Str.Str);
ASSERT (Str.Str != NULL);
Str.Str[Str.Len] = 0;
return Str.Str;

View File

@ -270,44 +270,6 @@ OutputConfigBody (
}
/**
Adjusts the size of a previously allocated buffer.
@param OldPool A pointer to the buffer whose size is being adjusted.
@param OldSize The size of the current buffer.
@param NewSize The size of the new buffer.
@return The new buffer allocated.
**/
VOID *
ReallocatePool (
IN VOID *OldPool,
IN UINTN OldSize,
IN UINTN NewSize
)
{
VOID *NewPool;
NewPool = NULL;
if (NewSize != 0) {
NewPool = AllocateZeroPool (NewSize);
}
if (OldPool != NULL) {
if (NewPool != NULL) {
CopyMem (NewPool, OldPool, OldSize < NewSize ? OldSize : NewSize);
}
FreePool (OldPool);
}
return NewPool;
}
/**
Append a string to a multi-string format.
@ -346,9 +308,9 @@ AppendToMultiString (
if (MultiStringSize + AppendStringSize > MAX_STRING_LENGTH ||
MultiStringSize > MAX_STRING_LENGTH) {
*MultiString = (EFI_STRING) ReallocatePool (
(VOID *) (*MultiString),
MultiStringSize,
MultiStringSize + AppendStringSize
MultiStringSize + AppendStringSize,
(VOID *) (*MultiString)
);
}