From 4b48fccaddd2f8f840f34779c07ad1fa634d09c5 Mon Sep 17 00:00:00 2001 From: Timon Kruiper Date: Mon, 19 Oct 2020 14:31:43 +0200 Subject: [PATCH] When checking a cache hit, make sure to handle a (re)moved source file When a file cannot be found in the cache, it is not a hit. Closes #6729 --- src/Cache.zig | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Cache.zig b/src/Cache.zig index 299eb0cfa2ca7d23b7d4c9030fc452f4d0bbf863..dd96e68d3ed79fd323d542df4177d39c40dff85d 100644 --- a/src/Cache.zig +++ b/src/Cache.zig @@ -315,8 +315,9 @@ pub const Manifest = struct { cache_hash_file.path = try self.cache.gpa.dupe(u8, file_path); } - const this_file = fs.cwd().openFile(cache_hash_file.path.?, .{ .read = true }) catch { - return error.CacheUnavailable; + const this_file = fs.cwd().openFile(cache_hash_file.path.?, .{ .read = true }) catch |err| switch (err) { + error.FileNotFound => return false, + else => return error.CacheUnavailable, }; defer this_file.close(); -- 2.54.0