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

View File

@ -14,41 +14,6 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include "DevicePath.h" #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 Concatenates a formatted unicode string to allocated pool. The caller must
free the resulting buffer. free the resulting buffer.
@ -90,9 +55,9 @@ CatPrint (
Size = StrSize (AppendStr) - sizeof (UINT16); Size = StrSize (AppendStr) - sizeof (UINT16);
Size = Size + StrSize (Str->Str); Size = Size + StrSize (Str->Str);
Str->Str = ReallocatePool ( Str->Str = ReallocatePool (
Str->Str,
StrSize (Str->Str), StrSize (Str->Str),
Size Size,
Str->Str
); );
ASSERT (Str->Str != NULL); ASSERT (Str->Str != NULL);
} }
@ -1752,7 +1717,7 @@ ConvertDeviceNodeToText (
// Shrink pool used for string allocation // Shrink pool used for string allocation
// //
NewSize = (Str.Len + 1) * sizeof (CHAR16); NewSize = (Str.Len + 1) * sizeof (CHAR16);
Str.Str = ReallocatePool (Str.Str, NewSize, NewSize); Str.Str = ReallocatePool (NewSize, NewSize, Str.Str);
ASSERT (Str.Str != NULL); ASSERT (Str.Str != NULL);
Str.Str[Str.Len] = 0; Str.Str[Str.Len] = 0;
return Str.Str; return Str.Str;
@ -1841,7 +1806,7 @@ ConvertDevicePathToText (
} }
NewSize = (Str.Len + 1) * sizeof (CHAR16); NewSize = (Str.Len + 1) * sizeof (CHAR16);
Str.Str = ReallocatePool (Str.Str, NewSize, NewSize); Str.Str = ReallocatePool (NewSize, NewSize, Str.Str);
ASSERT (Str.Str != NULL); ASSERT (Str.Str != NULL);
Str.Str[Str.Len] = 0; Str.Str[Str.Len] = 0;
return Str.Str; 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. Append a string to a multi-string format.
@ -346,9 +308,9 @@ AppendToMultiString (
if (MultiStringSize + AppendStringSize > MAX_STRING_LENGTH || if (MultiStringSize + AppendStringSize > MAX_STRING_LENGTH ||
MultiStringSize > MAX_STRING_LENGTH) { MultiStringSize > MAX_STRING_LENGTH) {
*MultiString = (EFI_STRING) ReallocatePool ( *MultiString = (EFI_STRING) ReallocatePool (
(VOID *) (*MultiString),
MultiStringSize, MultiStringSize,
MultiStringSize + AppendStringSize MultiStringSize + AppendStringSize,
(VOID *) (*MultiString)
); );
} }