refactor(dynamic array): improved error handeling for allocating and freeing memory

This commit is contained in:
Mineplay 2025-05-23 17:24:39 -05:00
parent a0cca7f696
commit 81f1c7d7ca

View file

@ -62,8 +62,7 @@ FledastyError fledasty_dynamic_array_destroy(FledastyDynamicArray *current_dynam
return FLEDASTY_ERROR_INVALID_POINTER;
}
HallocyError result = hallocy_free(current_dynamic_array->buffer);
if (result != HALLOCY_ERROR_NONE) {
if (hallocy_free(current_dynamic_array->buffer) != HALLOCY_ERROR_NONE) {
return FLEDASTY_ERROR_FAILED_ALLOCATION;
}
@ -79,6 +78,10 @@ FledastyError fledasty_dynamic_array_append(FledastyDynamicArray *current_dynami
if (current_dynamic_array->size == current_dynamic_array->capacity) {
current_dynamic_array->capacity += current_dynamic_array->capacity;
current_dynamic_array->buffer = (unsigned char*)hallocy_realloc(current_dynamic_array->buffer, current_dynamic_array->capacity * current_dynamic_array->element_byte_size);
if (current_dynamic_array->buffer == NULL) {
return FLEDASTY_ERROR_FAILED_ALLOCATION;
}
}
hallocy_copy_memory(current_dynamic_array->buffer + (current_dynamic_array->size * current_dynamic_array->element_byte_size), value, current_dynamic_array->element_byte_size);