From ac11b8273802a3371ff2b0727d4c76489ee2f8bc Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Fri, 19 Dec 2025 12:08:27 -0800 Subject: [PATCH] std.Io.Threaded: fix splat buffer calculations --- lib/std/Io/Threaded.zig | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/std/Io/Threaded.zig b/lib/std/Io/Threaded.zig index 3472b8fbe2c6b120390fc69c1a3b03f60bd3779d..424869f3d4c98bf2109da103b4cfbe4ca11568c2 100644 --- a/lib/std/Io/Threaded.zig +++ b/lib/std/Io/Threaded.zig @@ -7112,7 +7112,7 @@ fn fileWritePositional( addBuf(&iovecs, &iovlen, splat_buffer); remaining_splat -= splat_buffer.len; } - addBuf(&iovecs, &iovlen, splat_buffer[0..remaining_splat]); + addBuf(&iovecs, &iovlen, splat_buffer[0..@min(remaining_splat, splat_buffer.len)]); }, else => for (0..@min(splat, iovecs.len - iovlen)) |_| { addBuf(&iovecs, &iovlen, pattern); @@ -7234,7 +7234,7 @@ fn fileWriteStreaming( addBuf(&iovecs, &iovlen, splat_buffer); remaining_splat -= splat_buffer.len; } - addBuf(&iovecs, &iovlen, splat_buffer[0..remaining_splat]); + addBuf(&iovecs, &iovlen, splat_buffer[0..@min(remaining_splat, splat_buffer.len)]); }, else => for (0..@min(splat, iovecs.len - iovlen)) |_| { addBuf(&iovecs, &iovlen, pattern); @@ -9860,7 +9860,7 @@ fn netWritePosix( addBuf(&iovecs, &msg.iovlen, splat_buffer); remaining_splat -= splat_buffer.len; } - addBuf(&iovecs, &msg.iovlen, splat_buffer[0..remaining_splat]); + addBuf(&iovecs, &msg.iovlen, splat_buffer[0..@min(remaining_splat, splat_buffer.len)]); }, else => for (0..@min(splat, iovecs.len - msg.iovlen)) |_| { addBuf(&iovecs, &msg.iovlen, pattern); @@ -9945,7 +9945,7 @@ fn netWriteWindows( addWsaBuf(&iovecs, &len, splat_buffer); remaining_splat -= splat_buffer.len; } - addWsaBuf(&iovecs, &len, splat_buffer[0..remaining_splat]); + addWsaBuf(&iovecs, &len, splat_buffer[0..@min(remaining_splat, splat_buffer.len)]); }, else => for (0..@min(splat, iovecs.len - len)) |_| { addWsaBuf(&iovecs, &len, pattern); -- 2.54.0