From b077e2979c4ec21173e0ffa20ab7ee0c750a3ddc Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sun, 6 Jul 2025 19:41:36 -0700 Subject: [PATCH] std.io.Reader: fix peekByte --- lib/std/io/Reader.zig | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/std/io/Reader.zig b/lib/std/io/Reader.zig index 914f27d3ef..f9abb2dd4d 100644 --- a/lib/std/io/Reader.zig +++ b/lib/std/io/Reader.zig @@ -1060,11 +1060,12 @@ pub fn fillMore(r: *Reader) Error!void { pub fn peekByte(r: *Reader) Error!u8 { const buffer = r.buffer[0..r.end]; const seek = r.seek; - if (seek >= buffer.len) { - @branchHint(.unlikely); - try fill(r, 1); + if (seek < buffer.len) { + @branchHint(.likely); + return buffer[seek]; } - return buffer[seek]; + try fill(r, 1); + return r.buffer[r.seek]; } /// Reads 1 byte from the stream or returns `error.EndOfStream`.