diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2025-07-11 10:03:54 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2025-07-14 00:14:21 -0700 |
| commit | 5496901e713dc1a75de289d7e8e3c79e7fee9510 (patch) | |
| tree | 269aa691017a66c9256f914b90308447a9a3a77c /lib/std/Io/Reader.zig | |
| parent | 093fe02b75a4a28f7faecea63ce2ae9639ef5b66 (diff) | |
| download | zig-5496901e713dc1a75de289d7e8e3c79e7fee9510.tar.gz zig-5496901e713dc1a75de289d7e8e3c79e7fee9510.zip | |
std.Io.Reader.appendRemaining: add missing assert
Diffstat (limited to 'lib/std/Io/Reader.zig')
| -rw-r--r-- | lib/std/Io/Reader.zig | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/std/Io/Reader.zig b/lib/std/Io/Reader.zig index e6a7afeb3e..c8bd0f3000 100644 --- a/lib/std/Io/Reader.zig +++ b/lib/std/Io/Reader.zig @@ -245,6 +245,7 @@ pub fn appendRemaining( list: *std.ArrayListAlignedUnmanaged(u8, alignment), limit: Limit, ) LimitedAllocError!void { + assert(r.buffer.len != 0); // Needed to detect limit exceeded without losing data. const buffer = r.buffer; const buffer_contents = buffer[r.seek..r.end]; const copy_len = limit.minInt(buffer_contents.len); @@ -1657,11 +1658,12 @@ test "readAlloc when the backing reader provides one byte at a time" { } }; const str = "This is a test"; + var tiny_buffer: [1]u8 = undefined; var one_byte_stream: OneByteReader = .{ .str = str, .i = 0, .reader = .{ - .buffer = &.{}, + .buffer = &tiny_buffer, .vtable = &.{ .stream = OneByteReader.stream }, .seek = 0, .end = 0, |
