summaryrefslogtreecommitdiffstats
path: root/lib/libarchive/archive_write_set_compression_bzip2.c
diff options
context:
space:
mode:
authorkientzle <kientzle@FreeBSD.org>2004-04-28 04:41:27 +0000
committerkientzle <kientzle@FreeBSD.org>2004-04-28 04:41:27 +0000
commit4f6d19ce20f8f561fa9e1fe7261d5a9991cd68de (patch)
treebde271e0176f2528e906220fb052eacb00d57033 /lib/libarchive/archive_write_set_compression_bzip2.c
parentd6382fb16020a26e25981a0a7a51cb75aa79485e (diff)
downloadFreeBSD-src-4f6d19ce20f8f561fa9e1fe7261d5a9991cd68de.zip
FreeBSD-src-4f6d19ce20f8f561fa9e1fe7261d5a9991cd68de.tar.gz
Add statistics: track offset in compressed and uncompressed archive,
provide an interface for the client to query this information.
Diffstat (limited to 'lib/libarchive/archive_write_set_compression_bzip2.c')
-rw-r--r--lib/libarchive/archive_write_set_compression_bzip2.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/libarchive/archive_write_set_compression_bzip2.c b/lib/libarchive/archive_write_set_compression_bzip2.c
index 85e4870..f044a0c 100644
--- a/lib/libarchive/archive_write_set_compression_bzip2.c
+++ b/lib/libarchive/archive_write_set_compression_bzip2.c
@@ -172,6 +172,7 @@ archive_compressor_bzip2_write(struct archive *a, const void *buff,
state->stream.avail_in = length;
if (drive_compressor(a, state, 0))
return (-1);
+ a->file_position += length;
return (length);
}
@@ -244,6 +245,7 @@ archive_compressor_bzip2_finish(struct archive *a)
ret = (a->client_writer)(a, a->client_data, state->compressed,
block_length);
+ a->raw_position += ret;
if (ret != 0)
goto cleanup;
@@ -295,6 +297,7 @@ drive_compressor(struct archive *a, struct private_data *state, int finishing)
state->compressed_buffer_size - ret);
}
+ a->raw_position += ret;
state->stream.next_out = state->compressed +
state->compressed_buffer_size - ret;
state->stream.avail_out = ret;
OpenPOWER on IntegriCloud