std.fs.File.Reader.seekTo: fix one more logical position bug

This commit is contained in:
Andrew Kelley 2025-10-09 11:58:44 -07:00
parent 6a25bfc475
commit 8ccca8472a

View file

@ -1278,7 +1278,8 @@ pub const Reader = struct {
setLogicalPos(r, offset);
},
.streaming, .streaming_reading => {
if (offset >= r.pos) return Reader.seekBy(r, @intCast(offset - logicalPos(r)));
const logical_pos = logicalPos(r);
if (offset >= logical_pos) return Reader.seekBy(r, @intCast(offset - logical_pos));
if (r.seek_err) |err| return err;
posix.lseek_SET(r.file.handle, offset) catch |err| {
r.seek_err = err;