From: Tim Kientzle Date: Tue, 26 Oct 2010 05:18:26 +0000 (-0400) Subject: Issue 112: Use int64_t for tracking total size of entry X-Git-Tag: v3.0.0a~870 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=16facc8b2ed018c6841cb8ac82367a2115cfbbde;p=thirdparty%2Flibarchive.git Issue 112: Use int64_t for tracking total size of entry when parsing off GNU tar sparse file information. SVN-Revision: 2764 --- diff --git a/libarchive/archive_read_support_format_tar.c b/libarchive/archive_read_support_format_tar.c index 6bcd0f2e5..9d9718b48 100644 --- a/libarchive/archive_read_support_format_tar.c +++ b/libarchive/archive_read_support_format_tar.c @@ -2030,7 +2030,7 @@ gnu_sparse_01_parse(struct tar *tar, const char *p) */ static int64_t gnu_sparse_10_atol(struct archive_read *a, struct tar *tar, - ssize_t *remaining, size_t *unconsumed) + int64_t *remaining, size_t *unconsumed) { int64_t l, limit, last_digit_limit; const char *p; @@ -2077,9 +2077,9 @@ gnu_sparse_10_atol(struct archive_read *a, struct tar *tar, static ssize_t gnu_sparse_10_read(struct archive_read *a, struct tar *tar, size_t *unconsumed) { - ssize_t remaining, bytes_read; + ssize_t bytes_read; int entries; - int64_t offset, size, to_skip; + int64_t offset, size, to_skip, remaining; /* Clear out the existing sparse list. */ gnu_clear_sparse_list(tar);