2
0
Эх сурвалжийг харах

Revert `default_resize_bytes_align` logic to previous behaviour

gingerBill 2 жил өмнө
parent
commit
765969e6a3
1 өөрчлөгдсөн 7 нэмэгдсэн , 8 устгасан
  1. 7 8
      core/mem/alloc.odin

+ 7 - 8
core/mem/alloc.odin

@@ -243,11 +243,13 @@ default_resize_bytes_align :: proc(old_data: []byte, new_size, alignment: int, a
 		return alloc_bytes(new_size, alignment, allocator, loc)
 	}
 
-	if new_size == old_size {
-		return old_data, nil
-	}
 	if new_size == 0 {
-		return nil, free_bytes(old_data, allocator, loc)
+		err := free_bytes(old_data, allocator, loc)
+		return nil, err
+	}
+
+	if new_size == old_size {
+		return old_data, .None
 	}
 
 	new_memory, err := alloc_bytes(new_size, alignment, allocator, loc)
@@ -256,9 +258,6 @@ default_resize_bytes_align :: proc(old_data: []byte, new_size, alignment: int, a
 	}
 
 	runtime.copy(new_memory, old_data)
-	err1 := free_bytes(old_data, allocator, loc)
-	if err == nil {
-		err = err1
-	}
+	free_bytes(old_data, allocator, loc)
 	return new_memory, err
 }