Be certain to not abort prematurely when reading stuff from pipes.
diff --git a/archival/libunarchive/archive_xread.c b/archival/libunarchive/archive_xread.c
index 0b29dbf..d63d0d5 100644
--- a/archival/libunarchive/archive_xread.c
+++ b/archival/libunarchive/archive_xread.c
@@ -25,7 +25,7 @@
 	ssize_t size;
 
 	size = archive_handle->read(archive_handle->src_fd, buf, count);
-	if (size == -1) {
+	if (size < 0) {
 		bb_perror_msg_and_die("Read error");
 	}