diff --git a/dstr/src/dstr.c b/dstr/src/dstr.c index a7430d8..27213f2 100644 --- a/dstr/src/dstr.c +++ b/dstr/src/dstr.c @@ -15,15 +15,13 @@ struct dstr { }; String *wapp_dstr_with_capacity(u64 capacity) { - String *out = (String *)malloc(sizeof(String) + capacity + 1); - + String *out = (String *)calloc(1, sizeof(String) + capacity + 1); if (!out) { return NULL; } out->capacity = capacity; out->size = 0; - memset(out->buf, 0, capacity + 1); return out; } diff --git a/mem/src/arena/mem_arena.c b/mem/src/arena/mem_arena.c index 162c9e2..f59127d 100644 --- a/mem/src/arena/mem_arena.c +++ b/mem/src/arena/mem_arena.c @@ -39,22 +39,18 @@ bool wapp_mem_arena_init(Arena **arena, u64 base_capacity) { return false; } - *arena = (Arena *)malloc(sizeof(Arena)); + *arena = (Arena *)calloc(1, sizeof(Arena)); Arena *arena_ptr = *arena; if (!arena_ptr) { return false; } - memset(arena_ptr, 0, sizeof(Arena)); - - arena_ptr->active_arena = (BaseArena *)malloc(sizeof(BaseArena)); + arena_ptr->active_arena = (BaseArena *)calloc(1, sizeof(BaseArena)); if (!(arena_ptr->active_arena)) { wapp_mem_arena_free(arena); return false; } - memset(arena_ptr->active_arena, 0, sizeof(BaseArena)); - if (!base_arena_init(arena_ptr->active_arena, base_capacity)) { wapp_mem_arena_free(arena); return false; @@ -80,13 +76,11 @@ void *wapp_mem_arena_alloc_aligned(Arena *arena, u64 size, u64 alignment) { if (arena->active_arena->next) { arena->active_arena = arena->active_arena->next; } else { - arena->active_arena->next = (BaseArena *)malloc(sizeof(BaseArena)); + arena->active_arena->next = (BaseArena *)calloc(1, sizeof(BaseArena)); if (!(arena->active_arena->next)) { return NULL; } - memset(arena->active_arena->next, 0, sizeof(BaseArena)); - if (!base_arena_init(arena->active_arena->next, arena->initial_capacity)) { free(arena->active_arena->next); @@ -180,14 +174,11 @@ internal bool base_arena_init(BaseArena *arena, u64 capacity) { return false; } - u64 alloc_size = sizeof(u8) * capacity; - - arena->buf = (u8 *)malloc(alloc_size); + arena->buf = (u8 *)calloc(capacity, sizeof(u8)); if (!(arena->buf)) { return false; } - memset(arena->buf, 0, alloc_size); arena->capacity = capacity; arena->offset = arena->buf; arena->prev = arena->next = NULL;