]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Expose ZSTD_reset_compressedBlockState() to shared API
authorSen Huang <senhuang96@fb.com>
Thu, 7 Nov 2019 19:07:21 +0000 (14:07 -0500)
committerSen Huang <senhuang96@fb.com>
Fri, 8 Nov 2019 18:57:26 +0000 (13:57 -0500)
lib/compress/zstd_compress.c
lib/compress/zstd_compress_internal.h
lib/dictBuilder/zdict.c

index b99f91fed7ce5d867d328fb37c9c4c08567f1b77..ccd7af3dfdd9884544174d638b21ab7743a90c30 100644 (file)
@@ -1248,7 +1248,7 @@ static void ZSTD_assertEqualCParams(ZSTD_compressionParameters cParams1,
     assert(cParams1.strategy     == cParams2.strategy);
 }
 
-static void ZSTD_reset_compressedBlockState(ZSTD_compressedBlockState_t* bs)
+void ZSTD_reset_compressedBlockState(ZSTD_compressedBlockState_t* bs)
 {
     int i;
     for (i = 0; i < ZSTD_REP_NUM; ++i)
@@ -2835,7 +2835,7 @@ size_t ZSTD_loadCEntropy(ZSTD_compressedBlockState_t* bs, void* workspace,
     bs->rep[1] = MEM_readLE32(dictPtr+4);
     bs->rep[2] = MEM_readLE32(dictPtr+8);
     dictPtr += 12;
-    
+
     return dictPtr - (const BYTE*)dict;
 }
 
@@ -2846,7 +2846,7 @@ size_t ZSTD_loadCEntropy(ZSTD_compressedBlockState_t* bs, void* workspace,
 /*! ZSTD_loadZstdDictionary() :
  * @return : dictID, or an error code
  *  assumptions : magic number supposed already checked
- *                dictSize supposed > 8
+ *                dictSize supposed >= 8
  */
 static size_t ZSTD_loadZstdDictionary(ZSTD_compressedBlockState_t* bs,
                                       ZSTD_matchState_t* ms,
index 48bfea64aeda019a02fedb3004b4f8922882f24b..28c46e89544cf330239fc6f350a37de556e8233e 100644 (file)
@@ -945,6 +945,8 @@ size_t ZSTD_loadCEntropy(ZSTD_compressedBlockState_t* bs, void* workspace,
                          short* offcodeNCount, unsigned* offcodeMaxValue,
                          const void* const dict, size_t dictSize);
 
+void ZSTD_reset_compressedBlockState(ZSTD_compressedBlockState_t* bs);
+
 /* ==============================================================
  * Private declarations
  * These prototypes shall only be called from within lib/compress
index 499a309c598b87362db7a9927b355a9d144c184f..fc01c90f31fe9b98065dad5441da2e885b796a40 100644 (file)
@@ -112,14 +112,8 @@ size_t ZDICT_getDictHeaderSize(const void* dictBuffer, size_t dictSize)
         if (!bs || !wksp || !offcodeNCount) {
             return ERROR(memory_allocation);
         }
-
-        int i;
-        for (i = 0; i < ZSTD_REP_NUM; ++i)
-            bs->rep[i] = repStartValue[i];
-        bs->entropy.huf.repeatMode = HUF_repeat_none;
-        bs->entropy.fse.offcode_repeatMode = FSE_repeat_none;
-        bs->entropy.fse.matchlength_repeatMode = FSE_repeat_none;
-        bs->entropy.fse.litlength_repeatMode = FSE_repeat_none;
+        
+        ZSTD_reset_compressedBlockState(bs);
         headerSize = ZSTD_loadCEntropy(bs, wksp, offcodeNCount, &offcodeMaxValue, dictBuffer, dictSize);
         free(bs);
         free(wksp);