|
|
|
@@ -112,7 +112,10 @@ static int xan_huffman_decode(unsigned char *dest, int dest_len, |
|
|
|
init_get_bits(&gb, ptr, ptr_len * 8); |
|
|
|
|
|
|
|
while ( val != 0x16 ) { |
|
|
|
val = src[val - 0x17 + get_bits1(&gb) * byte]; |
|
|
|
unsigned idx = val - 0x17 + get_bits1(&gb) * byte; |
|
|
|
if (idx >= 2 * byte) |
|
|
|
return -1; |
|
|
|
val = src[idx]; |
|
|
|
|
|
|
|
if ( val < 0x16 ) { |
|
|
|
if (dest >= dest_end) |
|
|
|
|