X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=src%2Flzx-compress.c;h=c72fd460c84d47a4612fde0214499acad1d17f5c;hb=69bf8e6b27c11c8dfb0e9794ea43c3b8af72ee38;hp=04e5fbfb6fe2f1d3e51ffac9cb8ad4d03b4ad638;hpb=4ecf344e77e1f5891055881950a6e89e32b16008;p=wimlib diff --git a/src/lzx-compress.c b/src/lzx-compress.c index 04e5fbfb..c72fd460 100644 --- a/src/lzx-compress.c +++ b/src/lzx-compress.c @@ -190,6 +190,7 @@ #include "wimlib.h" #include "wimlib/compress.h" +#include "wimlib/endianness.h" #include "wimlib/error.h" #include "wimlib/lzx.h" #include "wimlib/util.h" @@ -249,9 +250,9 @@ struct lzx_codes { /* Tables for tallying symbol frequencies in the three LZX alphabets */ struct lzx_freqs { - freq_t main[LZX_MAINCODE_MAX_NUM_SYMBOLS]; - freq_t len[LZX_LENCODE_NUM_SYMBOLS]; - freq_t aligned[LZX_ALIGNEDCODE_NUM_SYMBOLS]; + input_idx_t main[LZX_MAINCODE_MAX_NUM_SYMBOLS]; + input_idx_t len[LZX_LENCODE_NUM_SYMBOLS]; + input_idx_t aligned[LZX_ALIGNEDCODE_NUM_SYMBOLS]; }; /* LZX intermediate match/literal format */ @@ -654,7 +655,7 @@ static unsigned lzx_build_precode(const u8 lens[restrict], const u8 prev_lens[restrict], const unsigned num_syms, - freq_t precode_freqs[restrict LZX_PRECODE_NUM_SYMBOLS], + input_idx_t precode_freqs[restrict LZX_PRECODE_NUM_SYMBOLS], u8 output_syms[restrict num_syms], u8 precode_lens[restrict LZX_PRECODE_NUM_SYMBOLS], u16 precode_codewords[restrict LZX_PRECODE_NUM_SYMBOLS], @@ -813,7 +814,7 @@ lzx_write_compressed_code(struct output_bitstream *out, const u8 prev_lens[restrict], unsigned num_syms) { - freq_t precode_freqs[LZX_PRECODE_NUM_SYMBOLS]; + input_idx_t precode_freqs[LZX_PRECODE_NUM_SYMBOLS]; u8 output_syms[num_syms]; u8 precode_lens[LZX_PRECODE_NUM_SYMBOLS]; u16 precode_codewords[LZX_PRECODE_NUM_SYMBOLS]; @@ -2142,7 +2143,7 @@ lzx_prepare_block_fast(struct lzx_compressor * ctx) * aren't worth choosing when using greedy or lazy parsing. */ .min_match = 3, .max_match = LZX_MAX_MATCH_LEN, - .max_offset = 32768, + .max_offset = LZX_MAX_WINDOW_SIZE, .good_match = LZX_MAX_MATCH_LEN, .nice_match = LZX_MAX_MATCH_LEN, .max_chain_len = LZX_MAX_MATCH_LEN,