|
@@ -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);
|
|
|
}
|