diff options
Diffstat (limited to 'src/librc')
-rw-r--r-- | src/librc/librc-depend.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/src/librc/librc-depend.c b/src/librc/librc-depend.c index 0af7391d..45c3dd02 100644 --- a/src/librc/librc-depend.c +++ b/src/librc/librc-depend.c @@ -565,27 +565,31 @@ mtime_check(const char *source, const char *target, bool newer, return true; if (newer) { - if (mtime < buf.st_mtime) + if (mtime < buf.st_mtime) { + if (rel == NULL) + return false; retval = false; + } if (rel != NULL) { if (*rel < buf.st_mtime) { if (file) strlcpy(file, target, PATH_MAX); *rel = buf.st_mtime; } - } else - return retval; + } } else { - if (mtime > buf.st_mtime) + if (mtime > buf.st_mtime) { + if (rel == NULL) + return false; retval = false; + } if (rel != NULL) { if (*rel > buf.st_mtime) { if (file) strlcpy(file, target, PATH_MAX); *rel = buf.st_mtime; } - } else - return retval; + } } /* If not a dir then reset errno */ |