fix compilation errors introduced by rebasing

This commit is contained in:
Andrew Kelley 2025-10-09 11:11:41 -07:00
parent b1733b7bce
commit 7d478114ec
3 changed files with 28 additions and 19 deletions

View File

@ -2873,6 +2873,8 @@ test "allocating sendFile" {
} }
test sendFileReading { test sendFileReading {
const io = testing.io;
var tmp_dir = testing.tmpDir(.{}); var tmp_dir = testing.tmpDir(.{});
defer tmp_dir.cleanup(); defer tmp_dir.cleanup();
@ -2883,7 +2885,7 @@ test sendFileReading {
try file_writer.interface.writeAll("abcd"); try file_writer.interface.writeAll("abcd");
try file_writer.interface.flush(); try file_writer.interface.flush();
var file_reader = file_writer.moveToReader(); var file_reader = file_writer.moveToReader(io);
try file_reader.seekTo(0); try file_reader.seekTo(0);
try file_reader.interface.fill(2); try file_reader.interface.fill(2);

View File

@ -1460,6 +1460,8 @@ test "access file" {
} }
test "sendfile" { test "sendfile" {
const io = testing.io;
var tmp = tmpDir(.{}); var tmp = tmpDir(.{});
defer tmp.cleanup(); defer tmp.cleanup();
@ -1470,21 +1472,14 @@ test "sendfile" {
const line1 = "line1\n"; const line1 = "line1\n";
const line2 = "second line\n"; const line2 = "second line\n";
var vecs = [_]posix.iovec_const{ var vecs = [_][]const u8{ line1, line2 };
.{
.base = line1,
.len = line1.len,
},
.{
.base = line2,
.len = line2.len,
},
};
var src_file = try dir.createFile("sendfile1.txt", .{ .read = true }); var src_file = try dir.createFile("sendfile1.txt", .{ .read = true });
defer src_file.close(); defer src_file.close();
{
try src_file.writevAll(&vecs); var fw = src_file.writer(&.{});
try fw.interface.writeVecAll(&vecs);
}
var dest_file = try dir.createFile("sendfile2.txt", .{ .read = true }); var dest_file = try dir.createFile("sendfile2.txt", .{ .read = true });
defer dest_file.close(); defer dest_file.close();
@ -1497,7 +1492,7 @@ test "sendfile" {
var trailers: [2][]const u8 = .{ trailer1, trailer2 }; var trailers: [2][]const u8 = .{ trailer1, trailer2 };
var written_buf: [100]u8 = undefined; var written_buf: [100]u8 = undefined;
var file_reader = src_file.reader(&.{}); var file_reader = src_file.reader(io, &.{});
var fallback_buffer: [50]u8 = undefined; var fallback_buffer: [50]u8 = undefined;
var file_writer = dest_file.writer(&fallback_buffer); var file_writer = dest_file.writer(&fallback_buffer);
try file_writer.interface.writeVecAll(&headers); try file_writer.interface.writeVecAll(&headers);
@ -1505,11 +1500,15 @@ test "sendfile" {
try testing.expectEqual(10, try file_writer.interface.sendFileAll(&file_reader, .limited(10))); try testing.expectEqual(10, try file_writer.interface.sendFileAll(&file_reader, .limited(10)));
try file_writer.interface.writeVecAll(&trailers); try file_writer.interface.writeVecAll(&trailers);
try file_writer.interface.flush(); try file_writer.interface.flush();
const amt = try dest_file.preadAll(&written_buf, 0); var fr = file_writer.moveToReader(io);
try fr.seekTo(0);
const amt = try fr.interface.readSliceShort(&written_buf);
try testing.expectEqualStrings("header1\nsecond header\nine1\nsecontrailer1\nsecond trailer\n", written_buf[0..amt]); try testing.expectEqualStrings("header1\nsecond header\nine1\nsecontrailer1\nsecond trailer\n", written_buf[0..amt]);
} }
test "sendfile with buffered data" { test "sendfile with buffered data" {
const io = testing.io;
var tmp = tmpDir(.{}); var tmp = tmpDir(.{});
defer tmp.cleanup(); defer tmp.cleanup();
@ -1527,7 +1526,7 @@ test "sendfile with buffered data" {
defer dest_file.close(); defer dest_file.close();
var src_buffer: [32]u8 = undefined; var src_buffer: [32]u8 = undefined;
var file_reader = src_file.reader(&src_buffer); var file_reader = src_file.reader(io, &src_buffer);
try file_reader.seekTo(0); try file_reader.seekTo(0);
try file_reader.interface.fill(8); try file_reader.interface.fill(8);
@ -1538,7 +1537,9 @@ test "sendfile with buffered data" {
try std.testing.expectEqual(4, try file_writer.interface.sendFileAll(&file_reader, .limited(4))); try std.testing.expectEqual(4, try file_writer.interface.sendFileAll(&file_reader, .limited(4)));
var written_buf: [8]u8 = undefined; var written_buf: [8]u8 = undefined;
const amt = try dest_file.preadAll(&written_buf, 0); var fr = file_writer.moveToReader(io);
try fr.seekTo(0);
const amt = try fr.interface.readSliceShort(&written_buf);
try std.testing.expectEqual(4, amt); try std.testing.expectEqual(4, amt);
try std.testing.expectEqualSlices(u8, "AAAA", written_buf[0..amt]); try std.testing.expectEqualSlices(u8, "AAAA", written_buf[0..amt]);
@ -2250,6 +2251,8 @@ test "seekTo flushes buffered data" {
} }
test "File.Writer sendfile with buffered contents" { test "File.Writer sendfile with buffered contents" {
const io = testing.io;
var tmp_dir = testing.tmpDir(.{}); var tmp_dir = testing.tmpDir(.{});
defer tmp_dir.cleanup(); defer tmp_dir.cleanup();
@ -2261,7 +2264,7 @@ test "File.Writer sendfile with buffered contents" {
defer out.close(); defer out.close();
var in_buf: [2]u8 = undefined; var in_buf: [2]u8 = undefined;
var in_r = in.reader(&in_buf); var in_r = in.reader(io, &in_buf);
_ = try in_r.getSize(); // Catch seeks past end by populating size _ = try in_r.getSize(); // Catch seeks past end by populating size
try in_r.interface.fill(2); try in_r.interface.fill(2);
@ -2275,7 +2278,7 @@ test "File.Writer sendfile with buffered contents" {
var check = try tmp_dir.dir.openFile("b", .{}); var check = try tmp_dir.dir.openFile("b", .{});
defer check.close(); defer check.close();
var check_buf: [4]u8 = undefined; var check_buf: [4]u8 = undefined;
var check_r = check.reader(&check_buf); var check_r = check.reader(io, &check_buf);
try testing.expectEqualStrings("abcd", try check_r.interface.take(4)); try testing.expectEqualStrings("abcd", try check_r.interface.take(4));
try testing.expectError(error.EndOfStream, check_r.interface.takeByte()); try testing.expectError(error.EndOfStream, check_r.interface.takeByte());
} }

View File

@ -572,6 +572,10 @@ fn spawnPosix(self: *ChildProcess) SpawnError!void {
error.BadPathName => unreachable, // Windows-only error.BadPathName => unreachable, // Windows-only
error.WouldBlock => unreachable, error.WouldBlock => unreachable,
error.NetworkNotFound => unreachable, // Windows-only error.NetworkNotFound => unreachable, // Windows-only
error.Canceled => unreachable, // temporarily in the posix error set
error.SharingViolation => unreachable, // Windows-only
error.PipeBusy => unreachable, // not a pipe
error.AntivirusInterference => unreachable, // Windows-only
else => |e| return e, else => |e| return e,
} }
else else