| ... | @@ -1010,7 +1010,14 @@ pub fn DebugAllocator(comptime config: Config) type { | ... | @@ -1010,7 +1010,14 @@ pub fn DebugAllocator(comptime config: Config) type { |
| 1010 | size_class_index: usize, | 1010 | size_class_index: usize, |
| 1011 | ) bool { | 1011 | ) bool { |
| 1012 | const new_size_class_index: usize = @max(@bitSizeOf(usize) - @clz(new_len - 1), @intFromEnum(alignment)); | 1012 | const new_size_class_index: usize = @max(@bitSizeOf(usize) - @clz(new_len - 1), @intFromEnum(alignment)); |
| 1013 | if (!config.safety) return new_size_class_index == size_class_index; | 1013 | if (!config.safety) { |
| | 1014 | if (new_size_class_index != size_class_index) return false; |
| | 1015 | // Still account for total even if safety is off |
| | 1016 | if (config.enable_memory_limit) |
| | 1017 | self.total_requested_bytes = self.total_requested_bytes - memory.len + new_len; |
| | 1018 | return true; |
| | 1019 | } |
| | 1020 | |
| 1014 | const slot_count = slot_counts[size_class_index]; | 1021 | const slot_count = slot_counts[size_class_index]; |
| 1015 | const memory_addr = @intFromPtr(memory.ptr); | 1022 | const memory_addr = @intFromPtr(memory.ptr); |
| 1016 | const page_addr = memory_addr & ~(page_size - 1); | 1023 | const page_addr = memory_addr & ~(page_size - 1); |