95 Commits

Author SHA1 Message Date
dweiller
31cc4605ab std.compress.zstandard: fix errors and crashes in ZstandardStream 2023-02-20 09:09:06 +11:00
dweiller
55e6e9409c std.compress.zstandard: fix content size check 2023-02-20 09:09:06 +11:00
dweiller
6d48b055af std.compress.zstandard: add decodeFrameHeader
Also do some other minor API cleanup
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
77ca1f7859 std.compress.zstandard: remove UnusedBitSet error 2023-02-20 09:09:06 +11:00
dweiller
d9a90e1818 std.compress.zstandard: fix decodeAlloc() and remove decodeFrameAlloc() 2023-02-20 09:09:06 +11:00
dweiller
2134769436 std.compress.zstandard: validate skippable frame size 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
a9c8376305 std.compress.zstandard: make ZstandardStream decode multiple frames 2023-02-20 09:09:06 +11:00
dweiller
06ab5a2cd2 std.compress.zstandard: add multi-frame decoding functions 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
a651704876 std.compress.zstandard: free allocated result on error 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
ddeabc9aa7 std.compress.zstandard: add decodeFrameAlloc() 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
dweiller
6e3e72884b std.compress.zstandard: fix crashes 2023-02-20 09:09:06 +11:00
dweiller
a180fcc93d std.compress.zstandard: add ZstandardStream 2023-02-20 09:09:06 +11:00
dweiller
5723291444 std.compress.zstandard: add decodeBlockReader 2023-02-20 09:09:06 +11:00
dweiller
947ad3e268 std.compress.zstandard: add FrameContext and add literals into DecodeState 2023-02-20 09:09:06 +11:00
dweiller
2d35c16ee7 std.compress.zstandard: add init/deinit for ring buffer, fix len() 2023-02-20 09:09:06 +11:00
dweiller
e92575d3d4 std.compress.zstandard: verify checksum in decodeFrameAlloc() 2023-02-20 09:09:06 +11:00
dweiller
3bfba36548 std.compress.zstandard: clean up error sets and line lengths 2023-02-20 09:09:06 +11:00
dweiller
3c06e2e7d0 std.compress.zstandard: add doc comments for RingBuffer 2023-02-20 09:09:06 +11:00
dweiller
1e5b8be509 std.compress.zstandard: add window size limit param 2023-02-20 09:09:06 +11:00
dweiller
e2306ef0a0 std.compress.zstandard: add integer casts u64 -> usize 2023-02-20 09:09:06 +11:00
dweiller
7558bf6451 std.compress.zstandard: minor cleanup and add doc comments 2023-02-20 09:09:06 +11:00
dweiller
ab18adf5c3 std.compress.zstandard: remove debug logging 2023-02-20 09:09:06 +11:00
dweiller
d40b135e95 std.compress.zstandard: properly track consumed count in decodeFrameBlocks 2023-02-20 09:09:06 +11:00
dweiller
774e2f5a5c std.compress.zstandard: add input length safety checks 2023-02-20 09:09:06 +11:00
dweiller
31d1cae8c6 std.compress.zstandard: validate fse table value count 2023-02-20 09:09:06 +11:00
dweiller
95953e1ee6 std.compress.zstandard: fix dictionary field size 2023-02-20 09:09:06 +11:00
dweiller
6b85373875 std.compress.zstandard: validate sequence lengths 2023-02-20 09:09:06 +11:00
dweiller
082acd7f17 std.compress.zstandard: clean up integer casts 2023-02-20 09:09:06 +11:00
dweiller
fc64c279a4 std.compress.zstandard: clean up api 2023-02-20 09:09:06 +11:00
dweiller
cbfaa876d4 std.compress.zstandard: cleanup ReverseBitReader 2023-02-20 09:09:05 +11:00
dweiller
c819e58c20 std.compress.zstandard: add decodeZStandardFrameAlloc
This is a convenience wrapper - best to use `decodeZStandardFrame()` if
the content size is known, or directly use `decodeBlockRingBuffer()`.
2023-02-20 09:09:05 +11:00
dweiller
05e63f241e std.compress.zstandard: add functions decoding into ring buffer
This supports decoding frames that do not declare the content size or
decoding in a streaming fashion.
2023-02-20 09:09:05 +11:00
dweiller
18091723d5 std.compress.zstandard: cleanup decodeBlock 2023-02-20 09:09:05 +11:00
dweiller
61cb514387 std.compress: add zstandard decompressor 2023-02-20 09:09:05 +11:00
Andrew Kelley
aeaef8c0ff update std lib and compiler sources to new for loop syntax 2023-02-18 19:17:21 -07:00
fn ⌃ ⌥
43c76e0c8e
Update block.zig 2023-02-05 09:18:07 -08:00
fn ⌃ ⌥
622a364715 Implement std.io.Reader for LZMA1 2023-02-05 08:23:51 -08:00
fn ⌃ ⌥
e03d6c42ea Delete redundant lzma/lzma2 prefix in function/struct names 2023-02-05 06:52:28 -08:00
Ryan Liptak
d57813e3e9 std.compress.xz: Avoid possible integer overflow in a few places 2023-02-05 06:08:35 -08:00
fn ⌃ ⌥
8e2af21cd9 Add LZMA decoder 2023-02-02 11:59:56 -08:00
fn ⌃ ⌥
d0dedefde9 std.compress.xz: fix for big-endian targets 2023-01-25 08:49:59 -08:00