aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLasse Collin <lasse.collin@tukaani.org>2022-09-30 12:06:13 +0300
committerLasse Collin <lasse.collin@tukaani.org>2022-09-30 12:06:13 +0300
commit508a44372c5b0dede8863fd0d358d4a9d8645c95 (patch)
tree738994a8b72b170c7c163b9aba35e4737f05e277
parentliblzma: Add dest and src NULL checks to lzma_index_cat. (diff)
downloadxz-508a44372c5b0dede8863fd0d358d4a9d8645c95.tar.xz
liblzma: Add API doc note about the .xz decoder LZMA_MEMLIMIT_ERROR bug.
The bug was fixed in 660739f99ab211edec4071de98889fb32ed04e98.
Diffstat (limited to '')
-rw-r--r--src/liblzma/api/lzma/base.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/liblzma/api/lzma/base.h b/src/liblzma/api/lzma/base.h
index 749e4fe7..ff2d8696 100644
--- a/src/liblzma/api/lzma/base.h
+++ b/src/liblzma/api/lzma/base.h
@@ -145,6 +145,12 @@ typedef enum {
* specified memory usage limit. To continue decoding,
* the memory usage limit has to be increased with
* lzma_memlimit_set().
+ *
+ * liblzma 5.2.6 and earlier had a bug in single-threaded .xz
+ * decoder (lzma_stream_decoder()) which made it impossible
+ * to continue decoding after LZMA_MEMLIMIT_ERROR even if
+ * the limit was increased using lzma_memlimit_set().
+ * Other decoders worked correctly.
*/
LZMA_FORMAT_ERROR = 7,
@@ -691,6 +697,11 @@ extern LZMA_API(uint64_t) lzma_memlimit_get(const lzma_stream *strm)
* return LZMA_OK. Later versions treat 0 as if 1 had been specified (so
* lzma_memlimit_get() will return 1 even if you specify 0 here).
*
+ * liblzma 5.2.6 and earlier had a bug in single-threaded .xz decoder
+ * (lzma_stream_decoder()) which made it impossible to continue decoding
+ * after LZMA_MEMLIMIT_ERROR even if the limit was increased using
+ * lzma_memlimit_set(). Other decoders worked correctly.
+ *
* \return - LZMA_OK: New memory usage limit successfully set.
* - LZMA_MEMLIMIT_ERROR: The new limit is too small.
* The limit was not changed.