From: David Ward Date: Wed, 13 Jan 2010 17:10:56 +0000 (+0300) Subject: lib: fix memory logging X-Git-Tag: frr-2.0-rc1~2169 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=0917f7e7c5920b70295c44bd8aad537bc3ee8581;p=mirror%2Ffrr.git lib: fix memory logging * lib/memory.h * mtype_zcalloc(): correct function prototype * XFREE(): make both definitions consistent in setting the pointer to NULL after freeing the memory These changes will only have an effect if MEMORY_LOG is defined (it is not by default). --- diff --git a/lib/memory.h b/lib/memory.h index 42eb5caec4..a7eddce4e1 100644 --- a/lib/memory.h +++ b/lib/memory.h @@ -46,7 +46,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 @@ -69,8 +72,7 @@ extern char *zstrdup (int type, const char *str); extern void *mtype_zmalloc (const char *file, int line, int type, size_t size); -extern void *mtype_zcalloc (const char *file, int line, int type, - size_t num, size_t size); +extern void *mtype_zcalloc (const char *file, int line, int type, size_t size); extern void *mtype_zrealloc (const char *file, int line, int type, void *ptr, size_t size);