diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2018-04-24 13:49:12 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2018-04-24 13:49:12 +0200 |
commit | 77bf05dfe39c507eafc6421ac66b4613aab5509f (patch) | |
tree | 8f4ec1f44fdc6100f8643e445b21b41c6245dd1c /archival | |
parent | df45eb49acaeb64574e14f78c6bb5b95f1157058 (diff) | |
download | busybox-77bf05dfe39c507eafc6421ac66b4613aab5509f.tar.gz |
unlzma: do emit the error message on bad input, when we exit with 1
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'archival')
-rw-r--r-- | archival/libarchive/decompress_unlzma.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/archival/libarchive/decompress_unlzma.c b/archival/libarchive/decompress_unlzma.c index 42efd5aa7..446319e7b 100644 --- a/archival/libarchive/decompress_unlzma.c +++ b/archival/libarchive/decompress_unlzma.c @@ -498,6 +498,12 @@ unpack_lzma_stream(transformer_state_t *xstate) IF_DESKTOP(total_written += buffer_pos;) if (transformer_write(xstate, buffer, buffer_pos) != (ssize_t)buffer_pos) { bad: + /* One of our users, bbunpack(), expects _us_ to emit + * the error message (since it's the best place to give + * potentially more detailed information). + * Do not fail silently. + */ + bb_error_msg("corrupted data"); total_written = -1; /* failure */ } rc_free(rc); |