]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Negating bool, updating bool on inner branches
authorBimba Shrestha <bimbashrestha@fb.com>
Tue, 26 Nov 2019 20:17:43 +0000 (12:17 -0800)
committerBimba Shrestha <bimbashrestha@fb.com>
Tue, 26 Nov 2019 20:17:43 +0000 (12:17 -0800)
lib/compress/zstd_compress.c

index 9211190e49910bdd183e490e82c6e6db19d24c57..502b6b33da73a421e7497be937737ae51ccaa331 100644 (file)
@@ -2457,7 +2457,7 @@ static size_t ZSTD_compressBlock_targetCBlockSize(ZSTD_CCtx* zc,
                                const void* src, size_t srcSize,
                                U32 lastBlock) {
     size_t cSize = 0;
-    int usingNoCompressSuperBlock = 0;
+    int compressSuperBlock = 1;
     DEBUGLOG(5, "ZSTD_compressBlock_targetCBlockSize (dstCapacity=%u, dictLimit=%u, nextToUpdate=%u, srcSize=%zu)",
                 (unsigned)dstCapacity, (unsigned)zc->blockState.matchState.window.dictLimit, (unsigned)zc->blockState.matchState.nextToUpdate, srcSize);
 
@@ -2473,7 +2473,7 @@ static size_t ZSTD_compressBlock_targetCBlockSize(ZSTD_CCtx* zc,
      */
     if (cSize == 0) {
         cSize = ZSTD_noCompressSuperBlock(dst, dstCapacity, src, srcSize, zc->appliedParams.targetCBlockSize, lastBlock);
-        usingNoCompressSuperBlock = 1;
+        compressSuperBlock = 0;
         /* In compression, there is an assumption that a compressed block is always
          * within the size of ZSTD_compressBound(). However, SuperBlock compression
          * can exceed the limit due to overhead of headers from SubBlocks.
@@ -2491,6 +2491,7 @@ static size_t ZSTD_compressBlock_targetCBlockSize(ZSTD_CCtx* zc,
             /* If ZSTD_noCompressSuperBlock fails with dstSize_tooSmall,
              * compress normally.
              */
+            compressSuperBlock = 1;
             cSize = ZSTD_compressSequences(&zc->seqStore,
                     &zc->blockState.prevCBlock->entropy, &zc->blockState.nextCBlock->entropy,
                     &zc->appliedParams,
@@ -2501,6 +2502,7 @@ static size_t ZSTD_compressBlock_targetCBlockSize(ZSTD_CCtx* zc,
 
             FORWARD_IF_ERROR(cSize);
             if (cSize == 0) {
+                compressSuperBlock = 0;
                 /* If compressSequences didn't work, we just output a regular
                  * uncompressed block */
                 cSize = ZSTD_noCompressBlock(dst, dstCapacity, src, srcSize, lastBlock);
@@ -2513,7 +2515,7 @@ static size_t ZSTD_compressBlock_targetCBlockSize(ZSTD_CCtx* zc,
         }
     }
 
-    if (!ZSTD_isError(cSize) && !usingNoCompressSuperBlock) {
+    if (!ZSTD_isError(cSize) && compressSuperBlock) {
         /* confirm repcodes and entropy tables when emitting a compressed block */
         ZSTD_compressedBlockState_t* const tmp = zc->blockState.prevCBlock;
         zc->blockState.prevCBlock = zc->blockState.nextCBlock;