From 55d5ff825fae0ee9a1114a17fcd97a3e360a23b0 Mon Sep 17 00:00:00 2001 From: Bruce Momjian <bruce@momjian.us> Date: Tue, 6 May 2014 10:00:57 -0400 Subject: [PATCH] Fix detection of short tar files, broken by commit 14ea89366fe321609afc5838ff9fe2ded1cd707d Report by Noah Misch --- src/bin/pg_dump/pg_backup_archiver.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c index adf91e1697c..2fa21193f51 100644 --- a/src/bin/pg_dump/pg_backup_archiver.c +++ b/src/bin/pg_dump/pg_backup_archiver.c @@ -2034,10 +2034,13 @@ _discoverArchiveFormat(ArchiveHandle *AH) exit_horribly(modulename, "input file appears to be a text format dump. Please use psql.\n"); } - if (AH->lookaheadLen != 512 && feof(fh)) - exit_horribly(modulename, "input file does not appear to be a valid archive (too short?)\n"); - else - READ_ERROR_EXIT(fh); + if (AH->lookaheadLen != 512) + { + if (feof(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)) exit_horribly(modulename, "input file does not appear to be a valid archive\n"); -- GitLab