X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2Fmisc.c;h=3a23aa4d2fd0664b6b9680f3151484484671c867;hb=cef4d5e83830763a1acd5d603fb62a356df27299;hp=b11b20eb67142a084f4783af28c3d1601e22768b;hpb=51aee274e892923a3f8fdb774e4f6b90bce47437;p=chaz%2Ftar diff --git a/src/misc.c b/src/misc.c index b11b20e..3a23aa4 100644 --- a/src/misc.c +++ b/src/misc.c @@ -750,9 +750,13 @@ file_removed_diag (const char *name, bool top_level, void (*diagfn) (char const *name)) { if (!top_level && errno == ENOENT) - WARNOPT (WARN_FILE_REMOVED, - (0, 0, _("%s: File removed before we read it"), - quotearg_colon (name))); + { + WARNOPT (WARN_FILE_REMOVED, + (0, 0, _("%s: File removed before we read it"), + quotearg_colon (name))); + if (exit_status == TAREXIT_SUCCESS) + exit_status = TAREXIT_DIFFERS; + } else diagfn (name); } @@ -762,9 +766,13 @@ dir_removed_diag (const char *name, bool top_level, void (*diagfn) (char const *name)) { if (!top_level && errno == ENOENT) - WARNOPT (WARN_FILE_REMOVED, - (0, 0, _("%s: Directory removed before we read it"), - quotearg_colon (name))); + { + WARNOPT (WARN_FILE_REMOVED, + (0, 0, _("%s: Directory removed before we read it"), + quotearg_colon (name))); + if (exit_status == TAREXIT_SUCCESS) + exit_status = TAREXIT_DIFFERS; + } else diagfn (name); }