From d113257d429217e2ddb99c1d75febd7775387543 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Tue, 25 Nov 2025 06:46:53 -0800 Subject: [PATCH] std.Io.Threaded: implement dirStat --- lib/std/Io/Threaded.zig | 5 ++--- lib/std/fs/Dir.zig | 5 +++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/std/Io/Threaded.zig b/lib/std/Io/Threaded.zig index bc52abc5d0..b4d6ede23a 100644 --- a/lib/std/Io/Threaded.zig +++ b/lib/std/Io/Threaded.zig @@ -1499,9 +1499,8 @@ fn dirMakeOpenPathWasi( fn dirStat(userdata: ?*anyopaque, dir: Io.Dir) Io.Dir.StatError!Io.Dir.Stat { const t: *Threaded = @ptrCast(@alignCast(userdata)); - _ = t; - _ = dir; - @panic("TODO implement dirStat"); + const file: Io.File = .{ .handle = dir.handle }; + return fileStat(t, file); } const dirStatPath = switch (native_os) { diff --git a/lib/std/fs/Dir.zig b/lib/std/fs/Dir.zig index 23bd903fe8..afb524b685 100644 --- a/lib/std/fs/Dir.zig +++ b/lib/std/fs/Dir.zig @@ -2009,8 +2009,9 @@ pub const StatError = File.StatError; /// Deprecated in favor of `Io.Dir.stat`. pub fn stat(self: Dir) StatError!Stat { - const file: File = .{ .handle = self.fd }; - return file.stat(); + var threaded: Io.Threaded = .init_single_threaded; + const io = threaded.ioBasic(); + return Io.Dir.stat(.{ .handle = self.fd }, io); } pub const StatFileError = File.OpenError || File.StatError || posix.FStatAtError;