zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 97f106f949891870433bfcc6b7cf4c2a6709402e (tree)
parent 22afd168d95b1d6be4a99196e07573bed8f4b472
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Mon, 15 Dec 2025 16:35:08 -0800

std.Io: fix dir iteration on macOS

Diffstat:
Mlib/std/Io/Dir.zig | 2+-
Mlib/std/Io/Threaded.zig | 3++-
2 files changed, 3 insertions(+), 2 deletions(-)

diff --git 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 @@ -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;