From 46f32f2ba988714e8740fc15b3bca432d2aa9bd3 Mon Sep 17 00:00:00 2001 From: Abdelrahman Date: Sat, 14 Sep 2024 13:38:55 +0100 Subject: [PATCH] Update signature of realloc functions to expect old and new sizes --- src/core/mem/allocator/mem_allocator.c | 14 ++++++-------- src/core/mem/allocator/mem_allocator.h | 15 ++++++--------- 2 files changed, 12 insertions(+), 17 deletions(-) diff --git a/src/core/mem/allocator/mem_allocator.c b/src/core/mem/allocator/mem_allocator.c index 985dbc1..59ba180 100644 --- a/src/core/mem/allocator/mem_allocator.c +++ b/src/core/mem/allocator/mem_allocator.c @@ -15,8 +15,7 @@ void *wapp_mem_allocator_alloc(const Allocator *allocator, u64 size) { return allocator->alloc(size, allocator->obj); } -void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size, - u64 alignment) { +void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size, u64 alignment) { if (!allocator || !(allocator->alloc_aligned)) { return NULL; } @@ -24,22 +23,21 @@ void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size, return allocator->alloc_aligned(size, alignment, allocator->obj); } -void *wapp_mem_allocator_realloc(const Allocator *allocator, void *ptr, - u64 size) { +void *wapp_mem_allocator_realloc(const Allocator *allocator, void *ptr, u64 old_size, u64 new_size) { if (!allocator || !(allocator->realloc)) { return NULL; } - return allocator->realloc(ptr, size, allocator->obj); + return allocator->realloc(ptr, old_size, new_size, allocator->obj); } -void *wapp_mem_allocator_realloc_aligned(const Allocator *allocator, void *ptr, - u64 size, u64 alignment) { +void *wapp_mem_allocator_realloc_aligned(const Allocator *allocator, void *ptr, u64 old_size, + u64 new_size, u64 alignment) { if (!allocator || !(allocator->realloc_aligned)) { return NULL; } - return allocator->realloc_aligned(ptr, size, alignment, allocator->obj); + return allocator->realloc_aligned(ptr, old_size, new_size, alignment, allocator->obj); } void wapp_mem_allocator_free(const Allocator *allocator, void **ptr) { diff --git a/src/core/mem/allocator/mem_allocator.h b/src/core/mem/allocator/mem_allocator.h index 2ba51ea..3ca01b8 100644 --- a/src/core/mem/allocator/mem_allocator.h +++ b/src/core/mem/allocator/mem_allocator.h @@ -15,9 +15,8 @@ extern "C" { typedef void *(MemAllocFunc)(u64 size, void *alloc_obj); typedef void *(MemAllocAlignedFunc)(u64 size, u64 alignment, void *alloc_obj); -typedef void *(MemReallocFunc)(void *ptr, u64 size, void *alloc_obj); -typedef void *(MemReallocAlignedFunc)(void *ptr, u64 size, u64 alignment, - void *alloc_obj); +typedef void *(MemReallocFunc)(void *ptr, u64 old_size, u64 new_size, void *alloc_obj); +typedef void *(MemReallocAlignedFunc)(void *ptr, u64 old_size, u64 new_size, u64 alignment, void *alloc_obj); typedef void(MemFreeFunc)(void **ptr, void *alloc_obj); /***************************************************************************/ // @@ -43,12 +42,10 @@ struct allocator { /***************************************************************************/ // void *wapp_mem_allocator_alloc(const Allocator *allocator, u64 size); -void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size, - u64 alignment); -void *wapp_mem_allocator_realloc(const Allocator *allocator, void *ptr, - u64 size); -void *wapp_mem_allocator_realloc_aligned(const Allocator *allocator, void *ptr, - u64 size, u64 alignment); +void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size, u64 alignment); +void *wapp_mem_allocator_realloc(const Allocator *allocator, void *ptr, u64 old_size, u64 new_size); +void *wapp_mem_allocator_realloc_aligned(const Allocator *allocator, void *ptr, u64 old_size, + u64 new_size, u64 alignment); void wapp_mem_allocator_free(const Allocator *allocator, void **ptr); #ifdef __cplusplus