The ISO C standard says about realloc(), If ptr is a null pointer, the realloc function behaves like the malloc function for the specified size.
The realloc() implementation doesn't conform to this currently, so add a check and call malloc() if appropriate. Cc: David Woodhouse <[email protected]> Cc: Qin Long <[email protected]> Cc: Ting Ye <[email protected]> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <[email protected]> --- CryptoPkg/Library/BaseCryptLib/SysCall/RuntimeMemAllocation.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CryptoPkg/Library/BaseCryptLib/SysCall/RuntimeMemAllocation.c b/CryptoPkg/Library/BaseCryptLib/SysCall/RuntimeMemAllocation.c index 45ef9ff5f252..413e47e92325 100644 --- a/CryptoPkg/Library/BaseCryptLib/SysCall/RuntimeMemAllocation.c +++ b/CryptoPkg/Library/BaseCryptLib/SysCall/RuntimeMemAllocation.c @@ -396,6 +396,10 @@ void *realloc (void *ptr, size_t size) UINTN StartPageIndex; UINTN PageCount; + if (ptr == NULL) { + return malloc (size); + } + // // Get Original Size of ptr // -- 1.8.3.1 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

