-
Notifications
You must be signed in to change notification settings - Fork 330
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Decoding error (36) : Corrupted block detected #170
Comments
Is it possible share a sample? Maybe email a link to ----- if you want to keep it private. |
I have provided sample files via e-mail - Hopefully that helps to track down the issue. |
Thanks for the test case! This seems to go back to #146 and possibly outputting too much data if tables are reused. If may be fixable by going back to |
zstd would reject huff0 compressed literals if the improvement was too small. However, this would update the huff0 state to contain a new table which could be reused. In that case a wrong table could be used for the next block. We move the rejection code to huff0, so the state can be properly maintained. Fixes #170
Found the issue. See #173 I will merge it to master and have fuzz tests run before I make a release (probably v1.9.0) |
* zstd: Fix reuse of huff0 when data hard to compress zstd would reject huff0 compressed literals if the improvement was too small. However, this would update the huff0 state to contain a new table which could be reused. In that case a wrong table could be used for the next block. We move the rejection code to huff0, so the state can be properly maintained. Fixes #170
@fproulx-eoscanada v1.9.0 released |
Hello,
I am unable to decompress some (like one out of several thousands) of files compressed using your library in
*.tar.zst
(I usemholt/archiver
, which uses your lib as backend). We have forkedmholt
to update tov1.8.6
, still the same isssue.The error we get with
unzstd
isDecoding error (36) : Corrupted block detected
The text was updated successfully, but these errors were encountered: