Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 16 additions & 11 deletions cvector.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,22 +10,27 @@
/* in case C library malloc() needs extra protection,
* allow these defines to be overridden.
*/
#ifndef cvector_clib_free
#include <stdlib.h> /* for free */
#define cvector_clib_free free
/* functions for allocation and deallocation need to correspond to each other, fall back to C library functions if not all are overridden */
#if !defined(cvector_clib_free) || !defined(cvector_clib_malloc) || !defined(cvector_clib_calloc) || !defined(cvector_clib_realloc)
#ifdef cvector_clib_free
#undef cvector_clib_free
#endif
#ifndef cvector_clib_malloc
#include <stdlib.h> /* for malloc */
#define cvector_clib_malloc malloc
#ifdef cvector_clib_malloc
#undef cvector_clib_malloc
#endif
#ifndef cvector_clib_calloc
#include <stdlib.h> /* for calloc */
#define cvector_clib_calloc calloc
#ifdef cvector_clib_calloc
#undef cvector_clib_calloc
#endif
#ifdef cvector_clib_realloc
#undef cvector_clib_realloc
#endif
#ifndef cvector_clib_realloc
#include <stdlib.h> /* for realloc */
#include <stdlib.h>
#define cvector_clib_free free
#define cvector_clib_malloc malloc
#define cvector_clib_calloc calloc
#define cvector_clib_realloc realloc
#endif
/* functions independent of memory allocation */
#ifndef cvector_clib_assert
#include <assert.h> /* for assert */
#define cvector_clib_assert assert
Expand Down
Loading