Fix bug with clearing arena function

This commit is contained in:
Abdelrahman Said 2024-03-24 07:49:49 +00:00
parent 09af7ec734
commit 063bc03974

View File

@ -115,18 +115,16 @@ void wapp_mem_arena_clear(Arena *arena) {
return; return;
} }
BaseArena *new_active = NULL; BaseArena *last_active = NULL;
while (arena->active_arena) { while (arena->active_arena) {
base_arena_clear(arena->active_arena); base_arena_clear(arena->active_arena);
last_active = arena->active_arena;
arena->active_arena = arena->active_arena->prev; arena->active_arena = arena->active_arena->prev;
if (arena->active_arena) {
new_active = arena->active_arena;
}
} }
arena->active_arena = new_active; arena->active_arena = last_active;
} }
void wapp_mem_arena_free(Arena **arena) { void wapp_mem_arena_free(Arena **arena) {