From d7abfa9ec6ac3906f681e52afc2255a78e7e4ecd Mon Sep 17 00:00:00 2001 From: Andy Huffman Date: Wed, 24 Aug 2022 09:03:33 -0400 Subject: [PATCH] Facilitate replacement of standard library memory management functions --- src/cborparser_dup_string.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/cborparser_dup_string.c b/src/cborparser_dup_string.c index 061c5ac7..c4308cf9 100644 --- a/src/cborparser_dup_string.c +++ b/src/cborparser_dup_string.c @@ -34,7 +34,14 @@ #include "cbor.h" #include "compilersupport_p.h" -#include + +#if defined(CBOR_CUSTOM_ALLOC_INCLUDE) +# include CBOR_CUSTOM_ALLOC_INCLUDE +#else +# include +# define cbor_malloc malloc +# define cbor_free free +#endif /** * \fn CborError cbor_value_dup_text_string(const CborValue *value, char **buffer, size_t *buflen, CborValue *next) @@ -105,14 +112,14 @@ CborError _cbor_value_dup_string(const CborValue *value, void **buffer, size_t * return err; ++*buflen; - *buffer = malloc(*buflen); + *buffer = cbor_malloc(*buflen); if (!*buffer) { /* out of memory */ return CborErrorOutOfMemory; } err = _cbor_value_copy_string(value, *buffer, buflen, next); if (err) { - free(*buffer); + cbor_free(*buffer); return err; } return CborNoError;