authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-07-31 14:58:59-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-07-31 22:10:11-07:00
log111305678cc606fa71133fcb8bf517e59b35b772
treeec27f180e7c78da1ded8b104ca5a68029e7cc375
parentae67c26cab7b430c254072ba21ee42288d023322

std: match readVec fn prototype exactly

this is not necessary according to zig language, but works around a flaw in the C backend

5 files changed, 6 insertions(+), 6 deletions(-)

lib/std/Io/Reader.zig+2-2
...@@ -421,7 +421,7 @@ pub fn readVec(r: *Reader, data: [][]u8) Error!usize {...@@ -421,7 +421,7 @@ pub fn readVec(r: *Reader, data: [][]u8) Error!usize {
421}421}
422422
423/// Writes to `Reader.buffer` or `data`, whichever has larger capacity.423/// Writes to `Reader.buffer` or `data`, whichever has larger capacity.
424pub fn defaultReadVec(r: *Reader, data: []const []u8) Error!usize {424pub fn defaultReadVec(r: *Reader, data: [][]u8) Error!usize {
425 assert(r.seek == r.end);425 assert(r.seek == r.end);
426 r.seek = 0;426 r.seek = 0;
427 r.end = 0;427 r.end = 0;
...@@ -1665,7 +1665,7 @@ fn endingStream(r: *Reader, w: *Writer, limit: Limit) StreamError!usize {...@@ -1665,7 +1665,7 @@ fn endingStream(r: *Reader, w: *Writer, limit: Limit) StreamError!usize {
1665 return error.EndOfStream;1665 return error.EndOfStream;
1666}1666}
16671667
1668fn endingReadVec(r: *Reader, data: []const []u8) Error!usize {1668fn endingReadVec(r: *Reader, data: [][]u8) Error!usize {
1669 _ = r;1669 _ = r;
1670 _ = data;1670 _ = data;
1671 return error.EndOfStream;1671 return error.EndOfStream;
lib/std/compress/flate/Decompress.zig+1-1
...@@ -109,7 +109,7 @@ fn discard(r: *Reader, limit: std.Io.Limit) Reader.Error!usize {...@@ -109,7 +109,7 @@ fn discard(r: *Reader, limit: std.Io.Limit) Reader.Error!usize {
109 return n;109 return n;
110}110}
111111
112fn readVec(r: *Reader, data: []const []u8) Reader.Error!usize {112fn readVec(r: *Reader, data: [][]u8) Reader.Error!usize {
113 _ = data;113 _ = data;
114 assert(r.seek == r.end);114 assert(r.seek == r.end);
115 r.rebase(flate.history_len) catch unreachable;115 r.rebase(flate.history_len) catch unreachable;
lib/std/compress/zstd/Decompress.zig+1-1
...@@ -131,7 +131,7 @@ fn discard(r: *Reader, limit: std.Io.Limit) Reader.Error!usize {...@@ -131,7 +131,7 @@ fn discard(r: *Reader, limit: std.Io.Limit) Reader.Error!usize {
131 return n;131 return n;
132}132}
133133
134fn readVec(r: *Reader, data: []const []u8) Reader.Error!usize {134fn readVec(r: *Reader, data: [][]u8) Reader.Error!usize {
135 _ = data;135 _ = data;
136 const d: *Decompress = @alignCast(@fieldParentPtr("reader", r));136 const d: *Decompress = @alignCast(@fieldParentPtr("reader", r));
137 assert(r.seek == r.end);137 assert(r.seek == r.end);
lib/std/fs/File.zig+1-1
...@@ -1305,7 +1305,7 @@ pub const Reader = struct {...@@ -1305,7 +1305,7 @@ pub const Reader = struct {
1305 }1305 }
1306 }1306 }
13071307
1308 fn readVec(io_reader: *std.Io.Reader, data: []const []u8) std.Io.Reader.Error!usize {1308 fn readVec(io_reader: *std.Io.Reader, data: [][]u8) std.Io.Reader.Error!usize {
1309 const r: *Reader = @alignCast(@fieldParentPtr("interface", io_reader));1309 const r: *Reader = @alignCast(@fieldParentPtr("interface", io_reader));
1310 switch (r.mode) {1310 switch (r.mode) {
1311 .positional, .positional_reading => {1311 .positional, .positional_reading => {
lib/std/net.zig+1-1
...@@ -1938,7 +1938,7 @@ pub const Stream = struct {...@@ -1938,7 +1938,7 @@ pub const Stream = struct {
1938 return n;1938 return n;
1939 }1939 }
19401940
1941 fn readVec(io_r: *std.Io.Reader, data: []const []u8) Io.Reader.Error!usize {1941 fn readVec(io_r: *std.Io.Reader, data: [][]u8) Io.Reader.Error!usize {
1942 const r: *Reader = @alignCast(@fieldParentPtr("interface_state", io_r));1942 const r: *Reader = @alignCast(@fieldParentPtr("interface_state", io_r));
1943 var iovecs: [max_buffers_len]windows.ws2_32.WSABUF = undefined;1943 var iovecs: [max_buffers_len]windows.ws2_32.WSABUF = undefined;
1944 const bufs_n, const data_size = try io_r.writableVectorWsa(&iovecs, data);1944 const bufs_n, const data_size = try io_r.writableVectorWsa(&iovecs, data);