aboutsummaryrefslogtreecommitdiff
path: root/lib/std
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2025-12-15 16:35:08 -0800
committerAndrew Kelley <andrew@ziglang.org>2025-12-23 22:15:09 -0800
commit97f106f949891870433bfcc6b7cf4c2a6709402e (patch)
treeb1ba43a1e75cab89eee46db10de98b52c1035e9c /lib/std
parent22afd168d95b1d6be4a99196e07573bed8f4b472 (diff)
downloadzig-97f106f949891870433bfcc6b7cf4c2a6709402e.tar.gz
zig-97f106f949891870433bfcc6b7cf4c2a6709402e.zip
std.Io: fix dir iteration on macOS
Diffstat (limited to 'lib/std')
-rw-r--r--lib/std/Io/Dir.zig2
-rw-r--r--lib/std/Io/Threaded.zig3
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/std/Io/Dir.zig b/lib/std/Io/Dir.zig
index 142ea8c2cf..f482f72afd 100644
--- a/lib/std/Io/Dir.zig
+++ b/lib/std/Io/Dir.zig
@@ -95,7 +95,7 @@ pub const Reader = struct {
dir: Dir,
state: State,
/// Stores I/O implementation specific data.
- buffer: []u8 align(@alignOf(usize)),
+ buffer: []align(@alignOf(usize)) u8,
/// Index of next entry in `buffer`.
index: usize,
/// Fill position of `buffer`.
diff --git a/lib/std/Io/Threaded.zig b/lib/std/Io/Threaded.zig
index f291af645e..f375bbcb7c 100644
--- a/lib/std/Io/Threaded.zig
+++ b/lib/std/Io/Threaded.zig
@@ -3406,11 +3406,12 @@ fn dirReadDarwin(userdata: ?*anyopaque, dr: *Dir.Reader, buffer: []Dir.Entry) Di
const Header = extern struct {
seek: i64,
};
- const header: *Header = @ptrCast(&dr.buffer);
+ const header: *Header = @ptrCast(dr.buffer.ptr);
const header_end: usize = @sizeOf(Header);
if (dr.index < header_end) {
// Initialize header.
dr.index = header_end;
+ dr.end = header_end;
header.* = .{ .seek = 0 };
}
var buffer_index: usize = 0;