Update signature of realloc functions to expect old and new sizes
This commit is contained in:
parent
8f794dee15
commit
46f32f2ba9
@ -15,8 +15,7 @@ void *wapp_mem_allocator_alloc(const Allocator *allocator, u64 size) {
|
|||||||
return allocator->alloc(size, allocator->obj);
|
return allocator->alloc(size, allocator->obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size,
|
void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size, u64 alignment) {
|
||||||
u64 alignment) {
|
|
||||||
if (!allocator || !(allocator->alloc_aligned)) {
|
if (!allocator || !(allocator->alloc_aligned)) {
|
||||||
return NULL;
|
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);
|
return allocator->alloc_aligned(size, alignment, allocator->obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
void *wapp_mem_allocator_realloc(const Allocator *allocator, void *ptr,
|
void *wapp_mem_allocator_realloc(const Allocator *allocator, void *ptr, u64 old_size, u64 new_size) {
|
||||||
u64 size) {
|
|
||||||
if (!allocator || !(allocator->realloc)) {
|
if (!allocator || !(allocator->realloc)) {
|
||||||
return NULL;
|
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,
|
void *wapp_mem_allocator_realloc_aligned(const Allocator *allocator, void *ptr, u64 old_size,
|
||||||
u64 size, u64 alignment) {
|
u64 new_size, u64 alignment) {
|
||||||
if (!allocator || !(allocator->realloc_aligned)) {
|
if (!allocator || !(allocator->realloc_aligned)) {
|
||||||
return NULL;
|
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) {
|
void wapp_mem_allocator_free(const Allocator *allocator, void **ptr) {
|
||||||
|
@ -15,9 +15,8 @@ extern "C" {
|
|||||||
|
|
||||||
typedef void *(MemAllocFunc)(u64 size, void *alloc_obj);
|
typedef void *(MemAllocFunc)(u64 size, void *alloc_obj);
|
||||||
typedef void *(MemAllocAlignedFunc)(u64 size, u64 alignment, 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 *(MemReallocFunc)(void *ptr, u64 old_size, u64 new_size, void *alloc_obj);
|
||||||
typedef void *(MemReallocAlignedFunc)(void *ptr, u64 size, u64 alignment,
|
typedef void *(MemReallocAlignedFunc)(void *ptr, u64 old_size, u64 new_size, u64 alignment, void *alloc_obj);
|
||||||
void *alloc_obj);
|
|
||||||
typedef void(MemFreeFunc)(void **ptr, 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(const Allocator *allocator, u64 size);
|
||||||
void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size,
|
void *wapp_mem_allocator_alloc_aligned(const Allocator *allocator, u64 size, u64 alignment);
|
||||||
u64 alignment);
|
void *wapp_mem_allocator_realloc(const Allocator *allocator, void *ptr, u64 old_size, u64 new_size);
|
||||||
void *wapp_mem_allocator_realloc(const Allocator *allocator, void *ptr,
|
void *wapp_mem_allocator_realloc_aligned(const Allocator *allocator, void *ptr, u64 old_size,
|
||||||
u64 size);
|
u64 new_size, u64 alignment);
|
||||||
void *wapp_mem_allocator_realloc_aligned(const Allocator *allocator, void *ptr,
|
|
||||||
u64 size, u64 alignment);
|
|
||||||
void wapp_mem_allocator_free(const Allocator *allocator, void **ptr);
|
void wapp_mem_allocator_free(const Allocator *allocator, void **ptr);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
Loading…
Reference in New Issue
Block a user