diff options
Diffstat (limited to 'lib/memory.h')
-rw-r--r-- | lib/memory.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/memory.h b/lib/memory.h index 5fa5c5ac..d67e865b 100644 --- a/lib/memory.h +++ b/lib/memory.h @@ -48,7 +48,10 @@ extern struct mlist mlists[]; #define XREALLOC(mtype, ptr, size) \ mtype_zrealloc (__FILE__, __LINE__, (mtype), (ptr), (size)) #define XFREE(mtype, ptr) \ - mtype_zfree (__FILE__, __LINE__, (mtype), (ptr)) + do { \ + mtype_zfree (__FILE__, __LINE__, (mtype), (ptr)); \ + ptr = NULL; } \ + while (0) #define XSTRDUP(mtype, str) \ mtype_zstrdup (__FILE__, __LINE__, (mtype), (str)) #else @@ -92,7 +95,7 @@ extern void *mtype_zmalloc (const char *file, int line, enum MTYPE type, size_t size); extern void *mtype_zcalloc (const char *file, int line, enum MTYPE type, - size_t num, size_t size); + size_t size); extern void *mtype_zrealloc (const char *file, int line, enum MTYPE type, void *ptr, size_t size); |