| ... | ... | @@ -439,7 +439,10 @@ pub const Manifest = struct { |
| 439 | 439 | self.manifest_file = manifest_file; |
| 440 | 440 | self.have_exclusive_lock = true; |
| 441 | 441 | } else |err| switch (err) { |
| 442 | | error.WouldBlock => { |
| 442 | // There are no dir components, so you would think that this was |
| 443 | // unreachable, however we have observed on macOS two processes racing |
| 444 | // to do openat() with O_CREAT manifest in ENOENT. |
| 445 | error.WouldBlock, error.FileNotFound => { |
| 443 | 446 | self.manifest_file = try self.cache.manifest_dir.openFile(&manifest_file_path, .{ |
| 444 | 447 | .lock = .Shared, |
| 445 | 448 | }); |