Timofey Solomko
a41fe89076
[Tests] Add a test for 7-zip container with large LZMA dictionary size
2026-05-14 21:33:33 +08:00
Timofey Solomko
3686067e54
[LZMA] Remove LZMARangeDecoder.isCorrupted property
...
According to LZMA specification this property is ignored by the reference implementation. In addition, specification suggests that other LZMA decoders should also ignore it. We weren't using this property for anything anyway, so its removal does not really change anything, except for better compliance with LZMA specification.
In addition, range decoder initialization error is now thrown in accordance with reference implementation.
2026-02-23 18:08:26 +08:00
Timofey Solomko
273b6ed9e9
Remove redundant imports
2026-02-18 12:21:57 +08:00
Timofey Solomko
ea9aaccfb9
Update copyright year to 2026
2026-01-31 15:30:24 +08:00
Timofey Solomko
ed66991cbd
Update copyright year to 2024
2024-01-11 16:57:04 +03:00
Timofey Solomko
c85adf3d73
[LZMA] Init range decoder's code with only one byte reader call
2023-02-19 16:51:03 +02:00
Timofey Solomko
ae99c943f6
[LZMA] Fix incorrect check for empty out window
...
This was caused by incorrectly assuming that out window (dictionary) always starts at 0 index. This is not correct in the case of LZMA2 where dictionary may have been reset, but the out window is technically not an empty array.
2023-02-19 16:49:14 +02:00
Timofey Solomko
43132fc39d
Update copyright year to 2023
2023-02-07 15:31:45 +02:00
Timofey Solomko
79295db930
Update copyright year to 2022
2022-01-08 15:02:59 +03:00
Timofey Solomko
cb730a334d
[LZMA] Change LZMAConstants from struct to enum
2021-07-21 19:47:05 +03:00
Timofey Solomko
aba14af8c5
Small changes to code comments
2021-07-17 11:14:53 +03:00
Timofey Solomko
5245a73a6c
Merge branch 'hotfix-4.5.11' into develop
2021-06-12 18:53:45 +03:00
Timofey Solomko
1fa0abce06
[docs] Add docs for LZMAProperties.init()
2021-06-12 18:39:35 +03:00
Timofey Solomko
03d47628a1
Merge branch 'hotfix-4.5.9' into develop
2021-05-01 16:14:33 +03:00
Timofey Solomko
2d1ff23436
Convert LZMA/LZMA2 internal types to structs
...
This change results in a performance boost due to reduction in retain/release calls.
2021-04-21 22:59:17 +03:00
Timofey Solomko
1fca632c2d
Update copyright year to 2021
2021-03-26 13:50:20 +02:00
Timofey Solomko
e83f23effa
Update copyright year to 2021
2021-01-11 11:20:57 +02:00
Timofey Solomko
deab72a831
Merge branch 'hotfix-4.5.7' into develop
2020-10-16 15:57:08 +03:00
Timofey Solomko
a07fc290a0
Small fixes to code comments
2020-10-15 23:35:34 +03:00
Timofey Solomko
00af5a9319
[BZip2][GZip][LZMA][XZ][Zlib] Fix crashes when opening very small files
...
Instead errors are now thrown.
2020-10-15 23:35:34 +03:00
Timofey Solomko
a844b34436
Update copyright year to 2020
2020-03-20 09:43:42 +03:00
Timofey Solomko
f6949a8f66
Replace the usage of the deprecated Data(bytes:) initializer
2020-03-20 09:40:48 +03:00
Timofey Solomko
31ec1f1553
Update copyright year to 2020
2020-01-01 19:06:33 +03:00
Timofey Solomko
75b21ae107
Replace usage of ByteReader with LittleEndianByteReader
2019-05-01 19:34:30 +03:00
Timofey Solomko
db82490ed8
Replace the usage of the deprecated Data(bytes:) initializer
2019-05-01 19:30:48 +03:00
Timofey Solomko
c93a783d21
[docs] Fix grammar issues with regards to a/the/null articles, while/during, and extra commas
2019-03-13 12:27:08 +03:00
Timofey Solomko
e518961218
[LZMA] Add public LZMAProperties.init() which uses default values of lc, etc.
2019-03-13 12:17:18 +03:00
Timofey Solomko
5ebe98796f
[LZMA] Add default values for lc, lp, pb, and dictionarySize properties of LZMAProperties
2019-03-13 12:16:42 +03:00
Timofey Solomko
ce47019097
Update copyright year to 2019
2019-01-02 23:15:43 +03:00
Timofey Solomko
e92782cea0
[docs] Explain min value for LZMAProperties.dictionarySize
2018-09-11 21:57:52 +03:00
Timofey Solomko
925bd363ff
[docs] Add docs for LZMA-properties related APIs
2018-09-11 20:07:02 +03:00
Timofey Solomko
7f27fdaf7c
[LZMA] Slightly rewrite initializer for RangeDecoder
2018-09-06 20:07:09 +03:00
Timofey Solomko
f5d8d9e81e
[LZMA] Add LZMAProperties initializer which reads lzma encoded properties from bytereader
2018-08-28 11:36:34 +03:00
Timofey Solomko
9a79aa8e51
[LZMA][ZIP] Add public function with data as first argument and internal function with byteReader instead which also accept LZMA properties and uncompressed size as
...
arguments; replace old internal decompress function used by ZIP with a new, more general one
2018-08-28 11:35:56 +03:00
Timofey Solomko
4e6d3beea9
[LZMA] Replace LZMAProperties.updateProperties with init from lzma byte and dict size
2018-08-28 11:34:04 +03:00
Timofey Solomko
8737e6e2df
[LZMA] Remove LZMADecoder.setProperties
2018-08-28 11:34:04 +03:00
Timofey Solomko
658611e2f1
[LZMA] Initialize properties in decoder with property initialzier
2018-08-28 11:34:04 +03:00
Timofey Solomko
bcc703d1f6
[LZMA2] Move LZMAProperties.updateDictionarySize function into LZMA2Decoder initializer
2018-08-22 10:40:16 +03:00
Timofey Solomko
30f46e06db
[LZMA] Use LZMAProperties.updateProperties function in LZMA decoder
2018-08-22 10:40:16 +03:00
Timofey Solomko
f4d46b7545
[LZMA] Add function to LZMAProperties which updates dictionary size with byte encoded with LZMA2 encoding scheme
2018-08-22 10:40:16 +03:00
Timofey Solomko
af40531e7a
[LZMA] Extract setting properties part from init-with-lzma-byte of LZMAProperties as a separate function
2018-08-22 10:40:16 +03:00
Timofey Solomko
7ca677c3d5
[LZMA] Add several initializers to LZMAProperties
...
These include: init-with-zeros, init-with values, and init from a single byte using standard LZMA properties encoding scheme.
2018-08-22 10:40:11 +03:00
Timofey Solomko
b52a55d54d
[LZMA] Replace references to properties of LZMADecoder with references to LZMAProperties property of decoder
2018-08-22 10:38:53 +03:00
Timofey Solomko
56600d2178
[LZMA] Add LZMAProperties property to LZMADecoder
2018-08-22 10:38:53 +03:00
Timofey Solomko
e6d680e82b
[LZMA] Add observer to LZMAProperties.dictionarySize which keeps it max bounded
2018-08-22 10:38:53 +03:00
Timofey Solomko
726e067fe4
[LZMA] Add LZMAProperties struct with all properties (lc, lp, pb and dict size)
2018-08-22 10:38:53 +03:00
Timofey Solomko
ffb0324afe
[docs] Clarify in docs for LZMA.decompress about bytes at the beginning of data
2018-08-22 10:36:23 +03:00
Timofey Solomko
062109d947
[LZMA] Reset decoder state inside LZMADecoder.setProperties
...
This removes additional requirement to call resetStateAndDecoders after calling setProperties.
2018-08-13 20:30:24 +03:00
Timofey Solomko
d75ee1e1f2
[LZMA] Change type of lc, lp and pb properties to Int
2018-08-13 12:37:35 +03:00
Timofey Solomko
6cfdc0ab29
[LZMA] Rename LZMADecoder.dictionarySize to dictSize
2018-05-20 12:55:46 +03:00