Allow short reads as we are looping anyway.
diff --git a/archival/libunarchive/archive_copy_file.c b/archival/libunarchive/archive_copy_file.c
index 47d1a52..faa8059 100644
--- a/archival/libunarchive/archive_copy_file.c
+++ b/archival/libunarchive/archive_copy_file.c
@@ -31,7 +31,8 @@
 		} else {
 			size = chunksize;
 		}
-		archive_xread_all(archive_handle, buffer, size);
+//		archive_xread_all(archive_handle, buffer, size);
+		size = archive_xread(archive_handle, buffer, size);
 
 		if (write(dst_fd, buffer, size) != size) {
 			error_msg_and_die ("Short write");