From 722a4fb99e0be441005c65e303359d1b5885f1c4 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ludovic=20Court=C3=A8s?= Date: Sat, 4 Sep 2010 16:13:42 +0200 Subject: [PATCH] Don't say "source file is newer" when either file is inaccessible. * libguile/load.c (compiled_is_fresh): Don't emit "source file is newer" warning when either FULL_FILENAME or COMPILED_FILENAME could not be stat'd. This is consistent with what load/compiled-file-name do. --- libguile/load.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/libguile/load.c b/libguile/load.c index fdd2763db..9c12a6067 100644 --- a/libguile/load.c +++ b/libguile/load.c @@ -629,7 +629,7 @@ compiled_is_fresh (SCM full_filename, SCM compiled_filename) { char *source, *compiled; struct stat stat_source, stat_compiled; - int compiled_is_newer = 0; + int compiled_is_newer; source = scm_to_locale_string (full_filename); compiled = scm_to_locale_string (compiled_filename); @@ -646,16 +646,19 @@ compiled_is_fresh (SCM full_filename, SCM compiled_filename) || (source_mtime.tv_sec == compiled_mtime.tv_sec && source_mtime.tv_nsec <= compiled_mtime.tv_nsec)) compiled_is_newer = 1; + else + { + compiled_is_newer = 0; + scm_puts (";;; note: source file ", scm_current_error_port ()); + scm_puts (source, scm_current_error_port ()); + scm_puts ("\n;;; newer than compiled ", scm_current_error_port ()); + scm_puts (compiled, scm_current_error_port ()); + scm_puts ("\n", scm_current_error_port ()); + } } - - if (!compiled_is_newer) - { - scm_puts (";;; note: source file ", scm_current_error_port ()); - scm_puts (source, scm_current_error_port ()); - scm_puts ("\n;;; newer than compiled ", scm_current_error_port ()); - scm_puts (compiled, scm_current_error_port ()); - scm_puts ("\n", scm_current_error_port ()); - } + else + /* At least one of the files isn't accessible. */ + compiled_is_newer = 0; free (source); free (compiled); -- 2.20.1