From 144c4ca0398fc9cb2c7e602baba7009871ef8ce8 Mon Sep 17 00:00:00 2001 From: Toomas Soome Date: Tue, 17 Sep 2019 09:47:35 +0000 Subject: [PATCH] loader: factor out guard location setup from Realloc To simplify and make it easier to read, use ga_Bytes field from guard structure. --- stand/libsa/zalloc_malloc.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/stand/libsa/zalloc_malloc.c b/stand/libsa/zalloc_malloc.c index 2cc14d80641d..f0eddb123178 100644 --- a/stand/libsa/zalloc_malloc.c +++ b/stand/libsa/zalloc_malloc.c @@ -156,7 +156,9 @@ Realloc(void *ptr, size_t size, const char *file, int line) if ((res = Malloc(size, file, line)) != NULL) { if (ptr) { - old = *(size_t *)((char *)ptr - MALLOCALIGN) - MALLOCALIGN; + Guard *g = (Guard *)((char *)ptr - MALLOCALIGN); + + old = g->ga_Bytes - MALLOCALIGN; if (old < size) bcopy(ptr, res, old); else