summaryrefslogtreecommitdiff
path: root/archival/libarchive/decompress_unxz.c
diff options
context:
space:
mode:
authorDenys Vlasenko2016-06-20 11:06:42 +0200
committerDenys Vlasenko2016-06-20 11:06:42 +0200
commit984b0a613aaf1cdf48c2e2af08c8466a7bad8307 (patch)
tree57b512d3843221b92da936b46abd238d1a036a94 /archival/libarchive/decompress_unxz.c
parentecf25cb5bce27ca5820e2895d8458f38c406d105 (diff)
downloadbusybox-984b0a613aaf1cdf48c2e2af08c8466a7bad8307.zip
busybox-984b0a613aaf1cdf48c2e2af08c8466a7bad8307.tar.gz
libarchive: fix xmalloc_open_zipped_read_close() on NOMMU
The somewhat new "unpack in memory" code was broken for xmalloc_open_zipped_read_close() on NOMMU: we seek back over signature, but then expect it to be already consumed. Stop seeking back in this case. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'archival/libarchive/decompress_unxz.c')
-rw-r--r--archival/libarchive/decompress_unxz.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/archival/libarchive/decompress_unxz.c b/archival/libarchive/decompress_unxz.c
index 1f408ab..cd32cc7 100644
--- a/archival/libarchive/decompress_unxz.c
+++ b/archival/libarchive/decompress_unxz.c
@@ -55,7 +55,7 @@ unpack_xz_stream(transformer_state_t *xstate)
iobuf.out = membuf + BUFSIZ;
iobuf.out_size = BUFSIZ;
- if (!xstate || xstate->check_signature == 0) {
+ if (!xstate || xstate->signature_skipped) {
/* Preload XZ file signature */
strcpy((char*)membuf, HEADER_MAGIC);
iobuf.in_size = HEADER_MAGIC_SIZE;