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(...@@ -16474,15 +16474,16 @@ fn fileMemoryMapSetLength(
16474 }16474 }
16475 } else {16475 } else {
16476 const gpa = t.allocator;16476 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| {
16478 mm.memory = @alignCast(new_ptr[0..new_len]);16478 mm.memory = @alignCast(new_ptr[0..new_len]);
16479 } else {16479 } else {
16480 const new_ptr: [*]align(page_align) u8 = @alignCast(16480 const new_ptr: [*]align(page_align) u8 = @alignCast(
16481 gpa.rawAlloc(new_len, alignment, @returnAddress()) orelse return error.OutOfMemory,16481 gpa.rawAlloc(new_len, alignment, @returnAddress()) orelse return error.OutOfMemory,
16482 );16482 );
16483 const copy_len = @min(new_len, mm.memory.len);16483 const copy_len = @min(new_len, old_memory.len);
16484 @memcpy(new_ptr[0..copy_len], mm.memory[0..copy_len]);16484 @memcpy(new_ptr[0..copy_len], old_memory[0..copy_len]);
16485 mm.memory = new_ptr[0..new_len];16485 mm.memory = new_ptr[0..new_len];
16486 gpa.rawFree(old_memory, alignment, @returnAddress());
16486 }16487 }
16487 }16488 }
16488}16489}