X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fcreate.c;h=de81639e2244f7c89afd0d6e597f77c4624adcc2;hb=745832a280f635b26d67e2cb8d8882ac0432e5a0;hp=f54e346f777c4828002ac6e24a103d50415312b1;hpb=b0d5935cb0bf058cd2fc286a48cfd6b6a1c098bf;p=chaz%2Ftar diff --git a/src/create.c b/src/create.c index f54e346..de81639 100644 --- a/src/create.c +++ b/src/create.c @@ -1066,8 +1066,7 @@ dump_regular_file (int fd, struct tar_stat_info *st) return dump_status_short; } size_left -= count; - if (count) - set_next_block_after (blk + (bufsize - 1) / BLOCKSIZE); + set_next_block_after (blk + (bufsize - 1) / BLOCKSIZE); if (count != bufsize) { @@ -1081,7 +1080,7 @@ dump_regular_file (int fd, struct tar_stat_info *st) STRINGIFY_BIGINT (size_left, buf))); if (! ignore_failed_read_option) exit_status = TAREXIT_DIFFERS; - pad_archive (size_left - (bufsize-count)); + pad_archive (size_left - (bufsize - count)); return dump_status_short; } } @@ -1423,6 +1422,8 @@ dump_hard_link (struct tar_stat_info *st) static void file_count_links (struct tar_stat_info *st) { + if (hard_dereference_option) + return; if (st->stat.st_nlink > 1) { struct link *duplicate;