Commit graph

20 commits

Author SHA1 Message Date
dweiller
32cf1d7cbf std.compress.zstandard: fix error sets for streaming API 2023-02-21 22:06:25 +11:00
dweiller
c7c35bf9e6 std.RingBuffer: add (non-concurrent) RingBuffer implementation 2023-02-21 12:58:34 +11:00
dweiller
a74f800dd7 std.compress.zstandard: update for multi-for-loop change 2023-02-20 16:58:48 +11:00
dweiller
12aa478db0 std.compress.zstandard: also check block size when sequence count is 0 2023-02-20 09:09:06 +11:00
dweiller
a53cf299a6 std.compress.zstandard: add error condition to ring buffer decoding
Previously `executeSequenceRingBuffer()` would not verify the offset
against the number of bytes already decoded, so it would happily copy
garbage bytes rather than return an error before the window was filled.

To fix this a new `written_count` is added to the decode state that
tracks the total number of bytes decoded.
2023-02-20 09:09:06 +11:00
dweiller
5a31fc2014 std.compress.zstandard: fix erroneous literal stream empty checks 2023-02-20 09:09:06 +11:00
dweiller
8fd41314bd std.compress.zstandard: remove unneeded branch 2023-02-20 09:09:06 +11:00
dweiller
373d8ef26e std.compress.zstandard: check FSE bitstreams are fully consumed 2023-02-20 09:09:06 +11:00
dweiller
1530e73648 std.compress.zstandard: bytes read assert to error in decodeBlockReader 2023-02-20 09:09:06 +11:00
dweiller
ee5af3c74c std.compress.zstandard: cleanup high-level api docs and error sets 2023-02-20 09:09:06 +11:00
dweiller
31cc4605ab std.compress.zstandard: fix errors and crashes in ZstandardStream 2023-02-20 09:09:06 +11:00
dweiller
3975a9d7ca std.compress.zstandard: error when FSE bitstream is no fully consumed 2023-02-20 09:09:06 +11:00
dweiller
98bbd959b0 std.compress.zstandard: improve block size validation 2023-02-20 09:09:06 +11:00
dweiller
ece52e0771 std.compress.zstandard: verify content size and fix crash 2023-02-20 09:09:06 +11:00
dweiller
a625df4636 std.compress.zstandard: fix fse decoding crash 2023-02-20 09:09:06 +11:00
dweiller
1c509f483a std.compress.zstandard: fix crashes 2023-02-20 09:09:06 +11:00
dweiller
596a97fb55 std.compress.zstandard: fix crashes 2023-02-20 09:09:06 +11:00
dweiller
3f1c4306ca std.compress.zstandard: fix capitalisation of Zstandard 2023-02-20 09:09:06 +11:00
dweiller
89f9c5cb37 std.compress.zstandard: improve doc comments 2023-02-20 09:09:06 +11:00
dweiller
7e2755646f std.compress.zstandard: split decompressor into multiple files 2023-02-20 09:09:06 +11:00