authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-03-14 11:42:00-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2023-03-15 10:48:15-07:00
log11de55d0ddd54afabb3e26a85adba0a1f0bbe35b
treed6a52bb67af44d80346f30599e610f651d021208
parent63bd0fe58e80742d273a962c03145ce598f060b6

std.Build.Cache: handle ENOENT on createFile race

Companion commit to 628fec41593a2d2eca8b504e4fe90de9823aeded

1 files changed, 5 insertions(+), 1 deletions(-)

lib/std/Build/Cache.zig+5-1
......@@ -422,7 +422,11 @@ pub const Manifest = struct {
422422 self.have_exclusive_lock = true;
423423 return false; // cache miss; exclusive lock already held
424424 } else |err| switch (err) {
425 error.WouldBlock => continue,
425 // There are no dir components, so you would think
426 // that this was unreachable, however we have
427 // observed on macOS two processes racing to do
428 // openat() with O_CREAT manifest in ENOENT.
429 error.WouldBlock, error.FileNotFound => continue,
426430 else => |e| return e,
427431 }
428432 },