From: Yann Collet Date: Tue, 6 Mar 2018 09:50:19 +0000 (-0800) Subject: fixed 0-seq blocks in block-decompression mode X-Git-Tag: v1.3.4~1^2~39^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=06ca9c7d7ce2c9883551ab1e4c535f6a456b5e5d;p=thirdparty%2Fzstd.git fixed 0-seq blocks in block-decompression mode --- diff --git a/lib/decompress/zstd_decompress.c b/lib/decompress/zstd_decompress.c index 12c46e572..53f555337 100644 --- a/lib/decompress/zstd_decompress.c +++ b/lib/decompress/zstd_decompress.c @@ -1331,7 +1331,8 @@ static size_t ZSTD_decompressBlock_internal(ZSTD_DCtx* dctx, ip += seqHSize; srcSize -= seqHSize; - if (dctx->fParams.windowSize > (1<<24)) { + if ( (dctx->fParams.windowSize > (1<<24) || !frame) + && (nbSeq>0) ) { /* could probably use a larger nbSeq limit */ U32 const shareLongOffsets = ZSTD_getLongOffsetsShare(dctx->OFTptr); U32 const minShare = MEM_64bits() ? 7 : 20; if (shareLongOffsets >= minShare)