aboutsummaryrefslogtreecommitdiff
path: root/lib/std
diff options
context:
space:
mode:
authorJacob Young <jacobly0@users.noreply.github.com>2025-10-09 15:22:14 -0400
committerAndrew Kelley <andrew@ziglang.org>2025-10-10 22:47:36 -0700
commitb2bc6073c8ada065906da9e3b5a4a2e7db04c21d (patch)
treeddaba6a7a70c69ae72bad8c6c5644596e427040c /lib/std
parentc17e18647bf55bae38a1837a6afb19b0f2393892 (diff)
downloadzig-b2bc6073c8ada065906da9e3b5a4a2e7db04c21d.tar.gz
zig-b2bc6073c8ada065906da9e3b5a4a2e7db04c21d.zip
windows: workaround kernel race condition
This was causing flaky CI failures.
Diffstat (limited to 'lib/std')
-rw-r--r--lib/std/os/windows.zig2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/std/os/windows.zig b/lib/std/os/windows.zig
index e6280b4560..932e401758 100644
--- a/lib/std/os/windows.zig
+++ b/lib/std/os/windows.zig
@@ -1912,6 +1912,7 @@ pub const CreateProcessError = error{
NameTooLong,
InvalidExe,
SystemResources,
+ FileBusy,
Unexpected,
};
@@ -1982,6 +1983,7 @@ pub fn CreateProcessW(
.INVALID_PARAMETER => unreachable,
.INVALID_NAME => return error.InvalidName,
.FILENAME_EXCED_RANGE => return error.NameTooLong,
+ .SHARING_VIOLATION => return error.FileBusy,
// These are all the system errors that are mapped to ENOEXEC by
// the undocumented _dosmaperr (old CRT) or __acrt_errno_map_os_error
// (newer CRT) functions. Their code can be found in crt/src/dosmap.c (old SDK)