| ... | ... | @@ -433,8 +433,7 @@ pub fn GeneralPurposeAllocator(comptime config: Config) type { |
| 433 | 433 | const bucket_slice = @ptrCast([*]align(@alignOf(BucketHeader)) u8, bucket)[0..bucket_size]; |
| 434 | 434 | self.backing_allocator.free(bucket_slice); |
| 435 | 435 | } else { |
| 436 | | // TODO Set the slot data to undefined. |
| 437 | | // Related: https://github.com/ziglang/zig/issues/4298 |
| 436 | @memset(bucket.page + slot_index * size_class, undefined, size_class); |
| 438 | 437 | } |
| 439 | 438 | } |
| 440 | 439 | |
| ... | ... | @@ -567,6 +566,9 @@ pub fn GeneralPurposeAllocator(comptime config: Config) type { |
| 567 | 566 | const new_aligned_size = math.max(new_size, old_align); |
| 568 | 567 | const new_size_class = math.ceilPowerOfTwoAssert(usize, new_aligned_size); |
| 569 | 568 | if (new_size_class <= size_class) { |
| 569 | if (old_mem.len > new_size) { |
| 570 | @memset(old_mem.ptr + new_size, undefined, old_mem.len - new_size); |
| 571 | } |
| 570 | 572 | return new_size; |
| 571 | 573 | } |
| 572 | 574 | return error.OutOfMemory; |