diff options
author | Nick Mathewson <nickm@torproject.org> | 2017-07-14 16:21:51 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2017-07-14 16:31:29 -0400 |
commit | 2ae51ed5e20ee045251d9d6ddf12755bca7c9c8c (patch) | |
tree | 7da0f0c927899f91edd53a4e18582fe2b3161d72 /changes | |
parent | 52c1754ff6b7f181ab40d1f3148ed6a28d60cef5 (diff) | |
download | tor-2ae51ed5e20ee045251d9d6ddf12755bca7c9c8c.tar.gz tor-2ae51ed5e20ee045251d9d6ddf12755bca7c9c8c.zip |
Fix zstd 1.3.0 trouble: Be more respectful of its state machine
In zstd 1.3.0, once you have called ZSTD_endStream and been told
that your putput buffer is full, it really doesn't want you to call
ZSTD_compressStream again. ZSTD 1.2.0 didn't seem to mind about
this.
This patch fixes the issue by making sure never to call
ZSTD_endStream if there's any more data on the input buffer to
process, by flushing even when we're about to call "endStream", and
by never calling "compress" or "flush" after "endStream".
Diffstat (limited to 'changes')
-rw-r--r-- | changes/bug22927 | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/changes/bug22927 b/changes/bug22927 new file mode 100644 index 0000000000..6e68e6ff08 --- /dev/null +++ b/changes/bug22927 @@ -0,0 +1,6 @@ + o Minor bugfixes (compatibility, zstd): + - Write zstd epilogues correctly when the epilogue requires reallocation + of the output buffer, even with zstd 1.3.0. (Previously, + we worked on 1.2.0 and failed with 1.3.0). Fixes bug 22927; bugfix on + 0.3.1.1-alpha. + |