diff options
Diffstat (limited to 'src/H5MMprivate.h')
-rw-r--r-- | src/H5MMprivate.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/H5MMprivate.h b/src/H5MMprivate.h index f94a433..39bba2c 100644 --- a/src/H5MMprivate.h +++ b/src/H5MMprivate.h @@ -14,7 +14,7 @@ * * Created: H5MMprivate.h * - * Purpose: Private header for memory management. + * Purpose: Private header for memory management * *------------------------------------------------------------------------- */ @@ -26,19 +26,33 @@ /* Private headers needed by this file */ #include "H5private.h" -#define H5MM_free(Z) free(Z) +/* Uncomment this macro to enable some extra memory checks + * + * This can also be defined at configure time, which we do in debug builds + * by default. + */ +/* #define H5MM_DEBUG */ + +#define H5MM_calloc(Z) calloc(1, Z) +#define H5MM_free(Z) free(Z) +#define H5MM_malloc(Z) malloc(Z) + +#ifndef H5MM_DEBUG +#define H5MM_memcpy(D, S, N) memcpy(D, S, N) +#endif /* !H5MM_DEBUG */ /* * Library prototypes... */ -H5_DLL void *H5MM_malloc(size_t size) H5_ATTR_MALLOC; -H5_DLL void *H5MM_calloc(size_t size) H5_ATTR_MALLOC; H5_DLL void *H5MM_realloc(void *mem, size_t size); H5_DLL char *H5MM_xstrdup(const char *s) H5_ATTR_MALLOC; H5_DLL char *H5MM_strdup(const char *s) H5_ATTR_MALLOC; H5_DLL char *H5MM_strndup(const char *s, size_t n) H5_ATTR_MALLOC; H5_DLL void *H5MM_xfree(void *mem); H5_DLL void *H5MM_xfree_const(const void *mem); + +#ifdef H5MM_DEBUG H5_DLL void *H5MM_memcpy(void *dest, const void *src, size_t n); +#endif #endif /* H5MMprivate_H */ |