Fix detection of short tar files, broken by commit 14ea89366f

Report by Noah Misch
This commit is contained in:
Bruce Momjian 2014-05-06 10:00:57 -04:00
parent 2e54d88af1
commit 55d5ff825f

View File

@ -2034,10 +2034,13 @@ _discoverArchiveFormat(ArchiveHandle *AH)
exit_horribly(modulename, "input file appears to be a text format dump. Please use psql.\n"); exit_horribly(modulename, "input file appears to be a text format dump. Please use psql.\n");
} }
if (AH->lookaheadLen != 512 && feof(fh)) if (AH->lookaheadLen != 512)
exit_horribly(modulename, "input file does not appear to be a valid archive (too short?)\n"); {
else if (feof(fh))
READ_ERROR_EXIT(fh); exit_horribly(modulename, "input file does not appear to be a valid archive (too short?)\n");
else
READ_ERROR_EXIT(fh);
}
if (!isValidTarHeader(AH->lookahead)) if (!isValidTarHeader(AH->lookahead))
exit_horribly(modulename, "input file does not appear to be a valid archive\n"); exit_horribly(modulename, "input file does not appear to be a valid archive\n");