]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
[libzstd] Error if all sequence bits aren't consumed
authorNick Terrell <terrelln@fb.com>
Tue, 23 Apr 2019 21:07:36 +0000 (14:07 -0700)
committerNick Terrell <terrelln@fb.com>
Tue, 23 Apr 2019 21:07:36 +0000 (14:07 -0700)
lib/decompress/zstd_decompress_block.c

index a2a7eedcf218ce0706f3fbd431693d09a58b3a47..34b82bf4140145757a4c3b10ec8380a539e0d552 100644 (file)
@@ -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; i<ZSTD_REP_NUM; i++) dctx->entropy.rep[i] = (U32)(seqState.prevOffset[i]); }
     }