From: Yann Collet Date: Sat, 28 Nov 2015 21:03:08 +0000 (+0100) Subject: fixed huff0 decoder (32-bits mode) X-Git-Tag: zstd-0.4.0^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=52732b505dd25288e019b1bc82e269109557e171;p=thirdparty%2Fzstd.git fixed huff0 decoder (32-bits mode) --- diff --git a/lib/huff0.c b/lib/huff0.c index a8798fd71..3ddb7e5e3 100644 --- a/lib/huff0.c +++ b/lib/huff0.c @@ -1495,10 +1495,7 @@ static inline size_t HUF_decodeStreamX6(BYTE* p, BIT_DStream_t* bitDPtr, BYTE* c while ((BIT_reloadDStream(bitDPtr) == BIT_DStream_unfinished) && (p <= pEnd-4)) HUF_DECODE_SYMBOLX6_0(p, bitDPtr); - while (p <= pEnd-4) - HUF_DECODE_SYMBOLX6_0(p, bitDPtr); /* no need to reload : reached the end of DStream */ - - while (p < pEnd) + while ((BIT_reloadDStream(bitDPtr) <= BIT_DStream_endOfBuffer) && (p < pEnd)) p += HUF_decodeLastSymbolsX6(p, (U32)(pEnd-p), bitDPtr, dd, ds, dtLog); return p-pStart;