From 83bcd1e5ed5eb5c4abc5154dae4dc6e133c8ddb4 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Thu, 18 Jan 2024 22:26:42 +0000 Subject: Do not free on failure to reallocate to size 0 (lol.) Signed-off-by: Laurent Bercot --- src/libstddjb/alloc_realloc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libstddjb/alloc_realloc.c b/src/libstddjb/alloc_realloc.c index 82be92b..6d5c680 100644 --- a/src/libstddjb/alloc_realloc.c +++ b/src/libstddjb/alloc_realloc.c @@ -5,8 +5,9 @@ int alloc_realloc (char **x, size_t n) { - char *y = n ? (char *)realloc(*x, n) : (free(*x), (char *)alloc(0)) ; + char *y = n ? realloc(*x, n) : alloc(0) ; if (!y) return 0 ; + if (!n) free(*x) ; *x = y ; return 1 ; } -- cgit v1.2.3