From 0ffb141fdc904f3005156cc8e71dd48eeab7c970 Mon Sep 17 00:00:00 2001 From: Alexey Tourbin Date: Sat, 18 Feb 2017 16:29:53 +0300 Subject: [PATCH] Fixed the check for empty object file vs diagnostics The test for diagnostic file currently interferes with the check for empty object file. Since the check for diagnostic file is much more similar to the check for dependency file, I put it there. --- ccache.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ccache.c b/ccache.c index 4081b0b2f..f039a367a 100644 --- a/ccache.c +++ b/ccache.c @@ -1869,12 +1869,6 @@ from_cache(enum fromcache_call_mode mode, bool put_object_in_manifest) return; } - // Check if the diagnostic file is there. - if (output_dia && stat(cached_dia, &st) != 0) { - cc_log("Diagnostic file %s not in cache", cached_dia); - return; - } - // Occasionally, e.g. on hard reset, our cache ends up as just filesystem // meta-data with no content. Catch an easy case of this. if (st.st_size == 0) { @@ -1910,6 +1904,12 @@ from_cache(enum fromcache_call_mode mode, bool put_object_in_manifest) return; } + // Check if the diagnostic file is there. + if (output_dia && stat(cached_dia, &st) != 0) { + cc_log("Diagnostic file %s not in cache", cached_dia); + return; + } + // Copy object file from cache. Do so also for FissionDwarf file, cached_dwo, // when -gsplit-dwarf is specified. if (!str_eq(output_obj, "/dev/null")) { -- 2.47.2