Switch to using calloc instead of malloc

This commit is contained in:
Abdelrahman Said 2024-03-24 11:25:52 +00:00
parent feada0b31c
commit 49ce26a6c2
2 changed files with 5 additions and 16 deletions

View File

@ -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;
}

View File

@ -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;