diff --git a/lzw.c b/lzw.c index 81ac7521c360f3442e3ec3abb5bfefe969442dba..64e79dc9a36b13b0b18e358fa2a044654a5fa701 100644 --- a/lzw.c +++ b/lzw.c @@ -74,35 +74,35 @@ act_LZW_clear(const HParseResult *p, void *u) // compare against expected next code, fail the parse if doesn't fit bit length bool -validate_LZW_9bitcodeword(const HParseResult *p, void *u) +validate_LZW_9bitcodeword(HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; return (ctx->next < 512); } bool -validate_LZW_10bitcodeword(const HParseResult *p, void *u) +validate_LZW_10bitcodeword(HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; return (ctx->next >= 512 && ctx->next < 1024); } bool -validate_LZW_11bitcodeword(const HParseResult *p, void *u) +validate_LZW_11bitcodeword(HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; return (ctx->next >= 1024 && ctx->next < 2048); } bool -validate_LZW_12bitcodeword(const HParseResult *p, void *u) +validate_LZW_12bitcodeword(HParseResult *p, void *u) { LZW_context_T * ctx = (LZW_context_T *) u; return (ctx->next >= 2048 && ctx->next < 4096); } bool -validate_LZW_literal(const HParseResult *p, void *u) +validate_LZW_literal(HParseResult *p, void *u) { uint64_t code = H_CAST_UINT(p->ast); return (code < 256); @@ -229,5 +229,6 @@ void init_lzw_parser() H_VRULE(LZW_12bitcodeword, h_bits(12, false)); H_ARULE(LZW_codeword, h_choice(LZW_9bitcodeword, LZW_10bitcodeword, LZW_11bitcodeword, LZW_12bitcodeword, NULL)); H_RULE(LZW_data, h_sequence(LZW_clear, h_many1(h_choice(LZW_literal, LZW_clear, LZW_codeword, NULL)), LZW_eod, NULL)); + p_lzwdata = LZW_data; }