\r
Module to rewrite stdlib references within Oniguruma\r
\r
- (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP<BR>\r
+ (C) Copyright 2014-2021 Hewlett Packard Enterprise Development LP<BR>\r
Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>\r
\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
return SetMem (dest, count, ch);\r
}\r
\r
+void free(void *ptr)\r
+{\r
+ VOID *EvalOnce;\r
+ ONIGMEM_HEAD *PoolHdr;\r
+\r
+ EvalOnce = ptr;\r
+ if (EvalOnce == NULL) {\r
+ return;\r
+ }\r
+\r
+ PoolHdr = (ONIGMEM_HEAD *)EvalOnce - 1;\r
+ if (PoolHdr->Signature == ONIGMEM_HEAD_SIGNATURE) {\r
+ FreePool (PoolHdr);\r
+ } else {\r
+ FreePool (EvalOnce);\r
+ }\r
+}\r
\r
Module to rewrite stdlib references within Oniguruma\r
\r
- (C) Copyright 2014-2015 Hewlett Packard Enterprise Development LP<BR>\r
+ (C) Copyright 2014-2021 Hewlett Packard Enterprise Development LP<BR>\r
Copyright (c) 2020, Intel Corporation. All rights reserved.<BR>\r
\r
SPDX-License-Identifier: BSD-2-Clause-Patent\r
#endif\r
\r
#define calloc(n,s) AllocateZeroPool((n)*(s))\r
-\r
-#define free(p) \\r
- do { \\r
- VOID *EvalOnce; \\r
- \\r
- EvalOnce = (p); \\r
- if (EvalOnce != NULL) { \\r
- FreePool (EvalOnce); \\r
- } \\r
- } while (FALSE)\r
-\r
#define xmemmove(Dest,Src,Length) CopyMem(Dest,Src,Length)\r
#define xmemcpy(Dest,Src,Length) CopyMem(Dest,Src,Length)\r
#define xmemset(Buffer,Value,Length) SetMem(Buffer,Length,Value)\r
void* realloc(void *ptr, size_t size);\r
void* memcpy (void *dest, const void *src, unsigned int count);\r
void* memset (void *dest, char ch, unsigned int count);\r
+void free(void *ptr);\r
\r
#define exit(n) ASSERT(FALSE);\r
\r