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 80f6b8c4b3
commit df712d0833

View File

@ -1225,7 +1225,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;