| ... | ... | @@ -1247,12 +1247,10 @@ pub const Reader = struct { |
| 1247 | 1247 | }; |
| 1248 | 1248 | var remaining = std.math.cast(u64, offset) orelse return seek_err; |
| 1249 | 1249 | while (remaining > 0) { |
| 1250 | | const n = discard(&r.interface, .limited64(remaining)) catch |err| { |
| 1250 | remaining -= discard(&r.interface, .limited64(remaining)) catch |err| { |
| 1251 | 1251 | r.seek_err = err; |
| 1252 | 1252 | return err; |
| 1253 | 1253 | }; |
| 1254 | | r.pos += n; |
| 1255 | | remaining -= n; |
| 1256 | 1254 | } |
| 1257 | 1255 | r.interface.seek = 0; |
| 1258 | 1256 | r.interface.end = 0; |
| ... | ... | @@ -1436,9 +1434,8 @@ pub const Reader = struct { |
| 1436 | 1434 | fallback: { |
| 1437 | 1435 | if (r.size_err == null and r.seek_err == null) break :fallback; |
| 1438 | 1436 | var trash_buffer: [128]u8 = undefined; |
| 1439 | | const trash = &trash_buffer; |
| 1440 | 1437 | if (is_windows) { |
| 1441 | | const n = windows.ReadFile(file.handle, trash, null) catch |err| { |
| 1438 | const n = windows.ReadFile(file.handle, limit.slice(&trash_buffer), null) catch |err| { |
| 1442 | 1439 | r.err = err; |
| 1443 | 1440 | return error.ReadFailed; |
| 1444 | 1441 | }; |
| ... | ... | @@ -1453,7 +1450,7 @@ pub const Reader = struct { |
| 1453 | 1450 | var iovecs_i: usize = 0; |
| 1454 | 1451 | var remaining = @intFromEnum(limit); |
| 1455 | 1452 | while (remaining > 0 and iovecs_i < iovecs.len) { |
| 1456 | | iovecs[iovecs_i] = .{ .base = trash, .len = @min(trash.len, remaining) }; |
| 1453 | iovecs[iovecs_i] = .{ .base = &trash_buffer, .len = @min(trash_buffer.len, remaining) }; |
| 1457 | 1454 | remaining -= iovecs[iovecs_i].len; |
| 1458 | 1455 | iovecs_i += 1; |
| 1459 | 1456 | } |