authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-02-04 12:46:56-08:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-02-04 16:30:19-08:00
log3078a3197bce73f6ce70117989ea09f991470f50
tree300395e820281affa126d312f05508b07d4186fc
parent0e7d00776e5468b53c2ba07ebfe9fef5abda310a

std.Io.Threaded.dirCreateDirWindows: remove unexpected error handling


1 files changed, 2 insertions(+), 7 deletions(-)

lib/std/Io/Threaded.zig+2-7
......@@ -3321,7 +3321,7 @@ fn dirCreateDirWindows(userdata: ?*anyopaque, dir: Dir, sub_path: []const u8, pe
33213321 // after an executable file is closed. Here we work around the
33223322 // kernel bug with retry attempts.
33233323 syscall.finish();
3324 if (max_windows_kernel_bug_retries - attempt == 0) return error.FileBusy;
3324 if (max_windows_kernel_bug_retries - attempt == 0) return error.Unexpected;
33253325 try parking_sleep.sleep(.{ .duration = .{
33263326 .raw = .fromMilliseconds((@as(u32, 1) << attempt) >> 1),
33273327 .clock = .awake,
......@@ -3338,7 +3338,7 @@ fn dirCreateDirWindows(userdata: ?*anyopaque, dir: Dir, sub_path: []const u8, pe
33383338 // this other than retrying the creation after the OS finishes
33393339 // the deletion.
33403340 syscall.finish();
3341 if (max_windows_kernel_bug_retries - attempt == 0) return error.FileBusy;
3341 if (max_windows_kernel_bug_retries - attempt == 0) return error.Unexpected;
33423342 try parking_sleep.sleep(.{ .duration = .{
33433343 .raw = .fromMilliseconds((@as(u32, 1) << attempt) >> 1),
33443344 .clock = .awake,
......@@ -3352,15 +3352,10 @@ fn dirCreateDirWindows(userdata: ?*anyopaque, dir: Dir, sub_path: []const u8, pe
33523352 .OBJECT_PATH_NOT_FOUND => return syscall.fail(error.FileNotFound),
33533353 .BAD_NETWORK_PATH => return syscall.fail(error.NetworkNotFound), // \\server was not found
33543354 .BAD_NETWORK_NAME => return syscall.fail(error.NetworkNotFound), // \\server was found but \\server\share wasn't
3355 .NO_MEDIA_IN_DEVICE => return syscall.fail(error.NoDevice),
33563355 .ACCESS_DENIED => return syscall.fail(error.AccessDenied),
3357 .PIPE_BUSY => return syscall.fail(error.PipeBusy),
3358 .PIPE_NOT_AVAILABLE => return syscall.fail(error.NoDevice),
33593356 .OBJECT_NAME_COLLISION => return syscall.fail(error.PathAlreadyExists),
3360 .FILE_IS_A_DIRECTORY => return syscall.fail(error.IsDir),
33613357 .NOT_A_DIRECTORY => return syscall.fail(error.NotDir),
33623358 .USER_MAPPED_FILE => return syscall.fail(error.AccessDenied),
3363 .VIRUS_INFECTED, .VIRUS_DELETED => return syscall.fail(error.AntivirusInterference),
33643359 .INVALID_PARAMETER => |status| return syscall.ntstatusBug(status),
33653360 .OBJECT_PATH_SYNTAX_BAD => |status| return syscall.ntstatusBug(status),
33663361 .INVALID_HANDLE => |status| return syscall.ntstatusBug(status),