From e2f10bc2ea6f2fdfeb23f0cbbac1d65ada1b9936 Mon Sep 17 00:00:00 2001 From: Robert James Kaes Date: Tue, 11 Sep 2001 19:27:27 +0000 Subject: Added the debugging realloc() function. --- src/utils.c | 9 ++++++++- src/utils.h | 5 ++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/utils.c b/src/utils.c index 7d9a872..d9361d6 100644 --- a/src/utils.c +++ b/src/utils.c @@ -1,4 +1,4 @@ -/* $Id: utils.c,v 1.10 2001-09-08 18:55:58 rjkaes Exp $ +/* $Id: utils.c,v 1.11 2001-09-11 19:27:27 rjkaes Exp $ * * Misc. routines which are used by the various functions to handle strings * and memory allocation and pretty much anything else we can think of. Also, @@ -49,6 +49,13 @@ void *debugging_malloc(size_t size, const char *file, unsigned long line) return ptr; } +void *debugging_realloc(void *ptr, size_t size, const char *file, unsigned long line) +{ + void *newptr = realloc(ptr, size); + fprintf(stderr, "{realloc: %p -> %p:%u} %s:%lu\n", ptr, newptr, size, file, line); + return newptr; +} + void debugging_free(void *ptr, const char *file, unsigned long line) { fprintf(stderr, "{free: %p} %s:%lu\n", ptr, file, line); diff --git a/src/utils.h b/src/utils.h index 24b7758..409def9 100644 --- a/src/utils.h +++ b/src/utils.h @@ -1,4 +1,4 @@ -/* $Id: utils.h,v 1.7 2001-09-08 18:55:58 rjkaes Exp $ +/* $Id: utils.h,v 1.8 2001-09-11 19:27:27 rjkaes Exp $ * * See 'utils.h' for a detailed description. * @@ -42,13 +42,16 @@ extern size_t strlcpy(char *dst, const char *src, size_t size); extern void *debugging_calloc(size_t nmemb, size_t size, const char *file, unsigned long line); extern void *debugging_malloc(size_t size, const char *file, unsigned long line); extern void debugging_free(void *ptr, const char *file, unsigned long line); +extern void *debugging_realloc(void *ptr, size_t size, const char *file, unsigned long line); # define safecalloc(x, y) debugging_calloc(x, y, __FILE__, __LINE__) # define safemalloc(x) debugging_malloc(x, __FILE__, __LINE__) +# define saferealloc(x, y) debugging_realloc(x, y, __FILE__, __LINE__) # define safefree(x) debugging_free(x, __FILE__, __LINE__) #else # define safecalloc(x, y) calloc(x, y) # define safemalloc(x) malloc(x) +# define saferealloc(x, y) realloc(x, y) # define safefree(x) free(x) #endif -- cgit v1.2.3