diff options
author | Eric Andersen <andersen@codepoet.org> | 2003-07-05 23:10:27 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2003-07-05 23:10:27 +0000 |
commit | e3393513c5f18e726795103f54b5ffd52a371638 (patch) | |
tree | 2841757c7c8bb6c335376caecce0fd4646d48a56 /archival/libunarchive | |
parent | 9f894f4062dbdd427895a9d12ca06e34791a4fb3 (diff) | |
download | busybox-w32-e3393513c5f18e726795103f54b5ffd52a371638.tar.gz busybox-w32-e3393513c5f18e726795103f54b5ffd52a371638.tar.bz2 busybox-w32-e3393513c5f18e726795103f54b5ffd52a371638.zip |
Be certain to not abort prematurely when reading stuff from pipes.
Diffstat (limited to 'archival/libunarchive')
-rw-r--r-- | archival/libunarchive/archive_xread.c | 2 | ||||
-rw-r--r-- | archival/libunarchive/init_handle.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/archival/libunarchive/archive_xread.c b/archival/libunarchive/archive_xread.c index 0b29dbfb9..d63d0d5a2 100644 --- a/archival/libunarchive/archive_xread.c +++ b/archival/libunarchive/archive_xread.c | |||
@@ -25,7 +25,7 @@ extern ssize_t archive_xread(const archive_handle_t *archive_handle, unsigned ch | |||
25 | ssize_t size; | 25 | ssize_t size; |
26 | 26 | ||
27 | size = archive_handle->read(archive_handle->src_fd, buf, count); | 27 | size = archive_handle->read(archive_handle->src_fd, buf, count); |
28 | if (size == -1) { | 28 | if (size < 0) { |
29 | bb_perror_msg_and_die("Read error"); | 29 | bb_perror_msg_and_die("Read error"); |
30 | } | 30 | } |
31 | 31 | ||
diff --git a/archival/libunarchive/init_handle.c b/archival/libunarchive/init_handle.c index 4b0103491..2659aa3eb 100644 --- a/archival/libunarchive/init_handle.c +++ b/archival/libunarchive/init_handle.c | |||
@@ -30,7 +30,7 @@ archive_handle_t *init_handle(void) | |||
30 | archive_handle->action_header = header_skip; | 30 | archive_handle->action_header = header_skip; |
31 | archive_handle->action_data = data_skip; | 31 | archive_handle->action_data = data_skip; |
32 | archive_handle->filter = filter_accept_all; | 32 | archive_handle->filter = filter_accept_all; |
33 | archive_handle->read = read; | 33 | archive_handle->read = bb_full_read; |
34 | archive_handle->seek = seek_by_jump; | 34 | archive_handle->seek = seek_by_jump; |
35 | 35 | ||
36 | return(archive_handle); | 36 | return(archive_handle); |