From: Sergey Poznyakoff Date: Wed, 19 May 2004 14:26:25 +0000 (+0000) Subject: (skip_file): Use seek_archive() if possible. X-Git-Url: https://git.dogcows.com/gitweb?a=commitdiff_plain;h=951b0370df3312cec343c590007301d3edd1be80;p=chaz%2Ftar (skip_file): Use seek_archive() if possible. --- diff --git a/src/list.c b/src/list.c index cb207a9..3166e68 100644 --- a/src/list.c +++ b/src/list.c @@ -1237,6 +1237,19 @@ skip_file (off_t size) save_sizeleft = size; } + if (seekable_archive) + { + off_t nblk = seek_archive (size); + if (nblk >= 0) + { + size -= nblk * BLOCKSIZE; + if (multi_volume_option) /* Argh.. */ + save_sizeleft -= nblk * BLOCKSIZE; + } + else + seekable_archive = false; + } + while (size > 0) { x = find_next_block ();