mirror of
https://github.com/acidanthera/audk.git
synced 2025-04-08 17:05:09 +02:00
StdLib/LibC/StdLib/Malloc.c: Make the free() function conform to the ISO/IEC 9899 (C95) specification.
The C95 specification states: "The free function causes the space pointed to by ptr to be deallocated, that is, made available for further allocation. If ptr is a null pointer, no action occurs". The UEFI FreePool() function, which the StdLib implementation of free() uses, does not make this check. This fix adds a check for null to the free() function such that if the pointer argument is NULL, nothing is done. Contributed-under: TianoCore Contribution Agreement 1.0 Reviewed-by: erik.c.bjorge@intel.com git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13739 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
76d6b68de8
commit
565b3c807c
@ -137,7 +137,9 @@ calloc(size_t Num, size_t Size)
|
||||
void
|
||||
free(void *Ptr)
|
||||
{
|
||||
(void) gBS->FreePool (Ptr);
|
||||
if(Ptr != NULL) {
|
||||
(void) gBS->FreePool (Ptr);
|
||||
}
|
||||
}
|
||||
|
||||
/** The realloc function changes the size of the object pointed to by Ptr to
|
||||
|
Loading…
x
Reference in New Issue
Block a user