From 872fb6faf80d9b925fa945cf5d7c8a257c34e0ba Mon Sep 17 00:00:00 2001 From: luboslenco Date: Wed, 15 Oct 2025 18:34:38 +0200 Subject: [PATCH] Implement simple gc_realloc when HEAP_SIZE is defined --- base/sources/iron_gc.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/base/sources/iron_gc.c b/base/sources/iron_gc.c index 379315f7..56a9b1e4 100644 --- a/base/sources/iron_gc.c +++ b/base/sources/iron_gc.c @@ -3,6 +3,7 @@ #ifdef NO_GC +#include #include #include @@ -34,8 +35,11 @@ void *gc_cut(void *ptr, size_t pos, size_t size) { void *gc_realloc(void *ptr, size_t size) { #ifdef HEAP_SIZE - // NOTE: gc_realloc is not implemented when HEAP_SIZE is defined - return gc_alloc(size); + void *new_ptr = gc_alloc(size); + if (ptr != NULL) { + memcpy(new_ptr, ptr, size); + } + return new_ptr; #else return realloc(ptr, size); #endif