authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-01-15 13:02:20-08:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-01-15 14:18:21-08:00
logde347dd6a981151609f1b9e79183d3f44046abc0
tree61e9307723d257d9a164747dff4336b8ce2dd1be
parent7ff6bcc1115b329cfb8ff1498f5d6cc74ae67dd3

std.Io.Threaded: add missing free in MemoryMap.setLength


1 files changed, 4 insertions(+), 3 deletions(-)

lib/std/Io/Threaded.zig+4-3
......@@ -16474,15 +16474,16 @@ fn fileMemoryMapSetLength(
1647416474 }
1647516475 } else {
1647616476 const gpa = t.allocator;
16477 if (gpa.rawRemap(mm.memory, alignment, new_len, @returnAddress())) |new_ptr| {
16477 if (gpa.rawRemap(old_memory, alignment, new_len, @returnAddress())) |new_ptr| {
1647816478 mm.memory = @alignCast(new_ptr[0..new_len]);
1647916479 } else {
1648016480 const new_ptr: [*]align(page_align) u8 = @alignCast(
1648116481 gpa.rawAlloc(new_len, alignment, @returnAddress()) orelse return error.OutOfMemory,
1648216482 );
16483 const copy_len = @min(new_len, mm.memory.len);
16484 @memcpy(new_ptr[0..copy_len], mm.memory[0..copy_len]);
16483 const copy_len = @min(new_len, old_memory.len);
16484 @memcpy(new_ptr[0..copy_len], old_memory[0..copy_len]);
1648516485 mm.memory = new_ptr[0..new_len];
16486 gpa.rawFree(old_memory, alignment, @returnAddress());
1648616487 }
1648716488 }
1648816489}