From: Sergey Poznyakoff Date: Mon, 1 Dec 2003 21:19:37 +0000 (+0000) Subject: (extract_archive): Check reported size vs. X-Git-Url: https://git.dogcows.com/gitweb?a=commitdiff_plain;h=47e73c7a445527ae5b88873c12905c7fe1cfaf78;p=chaz%2Ftar (extract_archive): Check reported size vs. archive file size to determine if we have to do with a sparse file. --- diff --git a/src/extract.c b/src/extract.c index 1731b3a..29b8e9b 100644 --- a/src/extract.c +++ b/src/extract.c @@ -601,6 +601,10 @@ extract_archive (void) /* Extract the archive entry according to its type. */ typeflag = current_header->header.typeflag; + /*KLUDGE*/ + if (current_stat_info.archive_file_size != current_stat_info.stat.st_size) + typeflag = GNUTYPE_SPARSE; + switch (typeflag) { case GNUTYPE_SPARSE: