diff options
author | Glenn L McGrath | 2003-11-21 22:24:57 +0000 |
---|---|---|
committer | Glenn L McGrath | 2003-11-21 22:24:57 +0000 |
commit | 7ffe1338647d2b890df3ae46e526410b21a90d18 (patch) | |
tree | e949e5879a7083bac9e2da249363f9c613d0a409 /archival/libunarchive/seek_by_char.c | |
parent | 1a2d75fd7273e8de936e5fd91462bdff381f9b62 (diff) | |
download | busybox-7ffe1338647d2b890df3ae46e526410b21a90d18.zip busybox-7ffe1338647d2b890df3ae46e526410b21a90d18.tar.gz |
As we no longer use function pointers for read in common archiving code
archive_xread can be replaced with bb_full_read, and archive_copy_file
with bb_copyfd*
bb_copyfd is split into two functions bb_copyfd_size and bb_copyfd_eof,
they share a common backend.
Diffstat (limited to 'archival/libunarchive/seek_by_char.c')
-rw-r--r-- | archival/libunarchive/seek_by_char.c | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/archival/libunarchive/seek_by_char.c b/archival/libunarchive/seek_by_char.c index 77da4ef..c031561 100644 --- a/archival/libunarchive/seek_by_char.c +++ b/archival/libunarchive/seek_by_char.c @@ -26,19 +26,7 @@ */ extern void seek_by_char(const archive_handle_t *archive_handle, const unsigned int jump_size) { - unsigned int remaining = jump_size; - unsigned int read_amount; - RESERVE_CONFIG_BUFFER(buf, BUFSIZ); - - while (remaining > 0) { - if (remaining > BUFSIZ) { - read_amount = BUFSIZ; - } else { - read_amount = remaining; - } - read_amount = archive_xread(archive_handle, buf, read_amount); - remaining -= read_amount; + if (jump_size) { + bb_full_fd_action(archive_handle->src_fd, -1, jump_size, NULL); } - - RELEASE_CONFIG_BUFFER(buf); } |