diff --git a/lib/compress/huf_compress.c b/lib/compress/huf_compress.c index d1b98afdb42..b18e7fdc2de 100644 --- a/lib/compress/huf_compress.c +++ b/lib/compress/huf_compress.c @@ -1224,7 +1224,11 @@ static size_t HUF_compressCTable_internal( unsigned HUF_optimalTableLog(unsigned maxTableLog, size_t srcSize, unsigned maxSymbolValue) { - return FSE_optimalTableLog_internal(maxTableLog, srcSize, maxSymbolValue, 1); + unsigned tableLog = FSE_optimalTableLog_internal(maxTableLog, srcSize, maxSymbolValue, 1); + assert(tableLog <= maxTableLog); + assert(tableLog <= HUF_TABLELOG_MAX); + + return tableLog; } typedef struct { diff --git a/lib/compress/zstd_compress.c b/lib/compress/zstd_compress.c index c8290157022..2553f1cf5da 100644 --- a/lib/compress/zstd_compress.c +++ b/lib/compress/zstd_compress.c @@ -3110,6 +3110,7 @@ static size_t ZSTD_buildBlockEntropyStats_literals(void* const src, size_t srcSi /* Build Huffman Tree */ ZSTD_memset(nextHuf->CTable, 0, sizeof(nextHuf->CTable)); huffLog = HUF_optimalTableLog(huffLog, srcSize, maxSymbolValue); + assert(huffLog <= LitHufLog); { size_t const maxBits = HUF_buildCTable_wksp((HUF_CElt*)nextHuf->CTable, countWksp, maxSymbolValue, huffLog, nodeWksp, nodeWkspSize);