aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2010-03-06 21:17:20 +0200
committerLasse Collin <lasse.collin@tukaani.org>2010-03-06 21:17:20 +0200
commitd0d1c51aea4351288a7e533cce28cb7f852f6b05 (patch)
tree320674bb9e297492c709dd58e25934ac61a15950
parentCollection of language fixes to comments and docs. (diff)
downloadxz-d0d1c51aea4351288a7e533cce28cb7f852f6b05.tar.xz
Fix missing initialization in lzma_strm_init().
With bad luck, lzma_code() could return LZMA_BUF_ERROR when it shouldn't. This has been here since the early days of liblzma. It got triggered by the modifications made to the xz tool in commit 18c10c30d2833f394cd7bce0e6a821044b15832f but only when decompressing .lzma files. Somehow I managed to miss testing that with Valgrind earlier. This fixes <http://bugs.gentoo.org/show_bug.cgi?id=305591>. Thanks to Rafał Mużyło for helping to debug it on IRC.
-rw-r--r--src/liblzma/common/common.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/liblzma/common/common.c b/src/liblzma/common/common.c
index edce90cd..2f185e49 100644
--- a/src/liblzma/common/common.c
+++ b/src/liblzma/common/common.c
@@ -161,6 +161,7 @@ lzma_strm_init(lzma_stream *strm)
strm->internal->supported_actions[LZMA_FULL_FLUSH] = false;
strm->internal->supported_actions[LZMA_FINISH] = false;
strm->internal->sequence = ISEQ_RUN;
+ strm->internal->allow_buf_error = false;
strm->total_in = 0;
strm->total_out = 0;