X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2Flist.c;h=3166e686c1ca43970807805f75da15a87204a004;hb=951b0370df3312cec343c590007301d3edd1be80;hp=e2746bc72445676762fe215c8b391aa9b284d332;hpb=4c004cff39d10f1b7744aaec1c9eb85c9cfb3c56;p=chaz%2Ftar diff --git a/src/list.c b/src/list.c index e2746bc..3166e68 100644 --- a/src/list.c +++ b/src/list.c @@ -1202,7 +1202,7 @@ print_header (struct tar_stat_info *st, off_t block_ordinal) /* Print a similar line when we make a directory automatically. */ void -print_for_mkdir (char *pathname, int length, mode_t mode) +print_for_mkdir (char *dirname, int length, mode_t mode) { char modes[11]; @@ -1221,7 +1221,7 @@ print_for_mkdir (char *pathname, int length, mode_t mode) } fprintf (stdlis, "%s %*s %.*s\n", modes, ugswidth + DATEWIDTH, - _("Creating directory:"), length, quotearg (pathname)); + _("Creating directory:"), length, quotearg (dirname)); } } @@ -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 ();