From a892e253742c5e447a1664d1bc925d0ea8e69ac8 Mon Sep 17 00:00:00 2001 From: Nick Terrell Date: Tue, 23 Apr 2019 14:07:36 -0700 Subject: [PATCH] [libzstd] Error if all sequence bits aren't consumed --- lib/decompress/zstd_decompress_block.c | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/decompress/zstd_decompress_block.c b/lib/decompress/zstd_decompress_block.c index a2a7eedcf..34b82bf41 100644 --- a/lib/decompress/zstd_decompress_block.c +++ b/lib/decompress/zstd_decompress_block.c @@ -930,6 +930,7 @@ ZSTD_decompressSequences_body( ZSTD_DCtx* dctx, /* check if reached exact end */ DEBUGLOG(5, "ZSTD_decompressSequences_body: after decode loop, remaining nbSeq : %i", nbSeq); RETURN_ERROR_IF(nbSeq, corruption_detected); + RETURN_ERROR_IF(BIT_reloadDStream(&seqState.DStream) < BIT_DStream_completed, corruption_detected); /* save reps for next block */ { U32 i; for (i=0; ientropy.rep[i] = (U32)(seqState.prevOffset[i]); } }