X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fcreate.c;h=49b82b927221ee5e2d33d6a71f4cf1d04e8f8634;hb=631de61428b8b840f3f87022de661f5468576bde;hp=7955e6b118bc9bb97e5648cc5da25ff1938618df;hpb=a169d65b94722c55b0daa20997a1cb02307159cf;p=chaz%2Ftar diff --git a/src/create.c b/src/create.c index 7955e6b..49b82b9 100644 --- a/src/create.c +++ b/src/create.c @@ -1,7 +1,7 @@ /* Create a tar archive. Copyright (C) 1985, 1992, 1993, 1994, 1996, 1997, 1999, 2000, 2001, - 2003, 2004, 2005 Free Software Foundation, Inc. + 2003, 2004, 2005, 2006 Free Software Foundation, Inc. Written by John Gilmore, on 1985-08-25. @@ -128,7 +128,6 @@ to_chars_subst (int negative, int gnu_format, uintmax_t value, size_t valsize, char const *minval_string; char const *maxval_string = STRINGIFY_BIGINT (maxval, maxbuf); char const *value_string; - char *p; if (gnu_format) { @@ -163,11 +162,12 @@ to_chars_subst (int negative, int gnu_format, uintmax_t value, size_t valsize, WARN ((0, 0, _("value %s out of %s range %s..%s; substituting %s"), value_string, type, minval_string, maxval_string, sub_string)); - to_chars (negsub, s, valsize, 0, where, size, type); + return to_chars (negsub, s, valsize, 0, where, size, type); } else ERROR ((0, 0, _("value %s out of %s range %s..%s"), value_string, type, minval_string, maxval_string)); + return false; } /* Convert NEGATIVE VALUE (which was originally of size VALSIZE) to @@ -494,7 +494,7 @@ split_long_name (const char *name, size_t length) size_t i; if (length > PREFIX_FIELD_SIZE) - length = PREFIX_FIELD_SIZE+2; + length = PREFIX_FIELD_SIZE + 1; for (i = length - 1; i > 0; i--) if (ISSLASH (name[i])) break; @@ -1520,6 +1520,8 @@ dump_file0 (struct tar_stat_info *st, char const *p, abort (); } + file_count_links (st); + ok = status == dump_status_ok; }