diff --git a/src/extract.c b/src/extract.c index 29b8e9b4..84e4ecdd 100644 --- a/src/extract.c +++ b/src/extract.c @@ -601,9 +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; + /*KLUDGE */ + if (current_format == POSIX_FORMAT + && current_stat_info.archive_file_size != current_stat_info.stat.st_size) + typeflag = GNUTYPE_SPARSE; switch (typeflag) {