Browse Source

Fix __dynamic_array_reserve to allow for zero sized elements

gingerBill 5 years ago
parent
commit
4d7270cec9
1 changed files with 1 additions and 3 deletions
  1. 1 3
      core/runtime/core.odin

+ 1 - 3
core/runtime/core.odin

@@ -1141,11 +1141,9 @@ __dynamic_array_reserve :: proc(array_: rawptr, elem_size, elem_align: int, cap:
 	allocator := array.allocator;
 
 	new_data := allocator.procedure(allocator.data, .Resize, new_size, elem_align, array.data, old_size, 0, loc);
-	if new_data == nil do return false;
-
 	array.data = new_data;
 	array.cap = cap;
-	return true;
+	return new_data != nil || elem_size == 0;
 }
 
 __dynamic_array_resize :: proc(array_: rawptr, elem_size, elem_align: int, len: int, loc := #caller_location) -> bool {