authorgravatar for ypsvlq@gmail.comElaine Gibson <ypsvlq@gmail.com> 2026-04-14 20:44:00+01:00
committergravatar for ypsvlq@gmail.comElaine Gibson <ypsvlq@gmail.com> 2026-04-14 20:44:00+01:00
log52c000c2478197a4e7b7fe883deb9e6744ee68b2
tree08c702d4a68b5a1e5b835689350dc76f11f23353
parentdb63e4725a8fe0370ec88fcbf6f5a3085f6bd767

std.Io.Threaded: handle haiku syscall returns correctly


1 files changed, 3 insertions(+), 3 deletions(-)

lib/std/Io/Threaded.zig+3-3
......@@ -5803,7 +5803,7 @@ fn dirReadHaiku(userdata: ?*anyopaque, dr: *Dir.Reader, buffer: []Dir.Entry) Dir
58035803 const syscall: Syscall = try .start();
58045804 while (true) {
58055805 const rc = posix.system._kern_rewind_dir(dr.dir.handle);
5806 switch (posix.errno(rc)) {
5806 switch (@as(posix.E, @enumFromInt(@min(rc, 0)))) {
58075807 .SUCCESS => {
58085808 syscall.finish();
58095809 break;
......@@ -5825,7 +5825,7 @@ fn dirReadHaiku(userdata: ?*anyopaque, dr: *Dir.Reader, buffer: []Dir.Entry) Dir
58255825 const syscall: Syscall = try .start();
58265826 const n: usize = while (true) {
58275827 const rc = posix.system._kern_read_dir(dr.dir.handle, dr.buffer.ptr, dr.buffer.len, @truncate(dr.buffer.len / @sizeOf(posix.system.DirEnt)));
5828 switch (posix.errno(rc)) {
5828 switch (@as(posix.E, @enumFromInt(@min(rc, 0)))) {
58295829 .SUCCESS => {
58305830 syscall.finish();
58315831 break @intCast(rc);
......@@ -5868,7 +5868,7 @@ fn dirReadHaiku(userdata: ?*anyopaque, dr: *Dir.Reader, buffer: []Dir.Entry) Dir
58685868 const syscall: Syscall = try .start();
58695869 while (true) {
58705870 const rc = posix.system._kern_read_stat(dr.dir.handle, name, false, &stat, @sizeOf(std.c.Stat));
5871 switch (posix.errno(rc)) {
5871 switch (@as(posix.E, @enumFromInt(@min(rc, 0)))) {
58725872 .SUCCESS => {
58735873 syscall.finish();
58745874 break;