Ensure arena is freed when initialisation fails

This commit is contained in:
Abdelrahman Said 2024-02-24 23:01:26 +00:00
parent 1094a9fefb
commit 7948d3fd1a

View File

@ -49,12 +49,14 @@ bool mem_arena_init(Arena **arena, u64 base_capacity) {
arena_ptr->active_arena = (BaseArena *)malloc(sizeof(BaseArena));
if (!(arena_ptr->active_arena)) {
mem_arena_free(arena);
return false;
}
memset(arena_ptr->active_arena, 0, sizeof(BaseArena));
if (!base_arena_init(arena_ptr->active_arena, base_capacity)) {
mem_arena_free(arena);
return false;
}