diff --git a/lib/compress/zstd_compress.c b/lib/compress/zstd_compress.c index f315d75eee2..566e37c9d88 100644 --- a/lib/compress/zstd_compress.c +++ b/lib/compress/zstd_compress.c @@ -4687,7 +4687,8 @@ static size_t ZSTD_loadDictionaryContent(ZSTD_matchState_t* ms, } /* If the dict is larger than we can reasonably index in our tables, only load the suffix. */ - { U32 maxDictSize = 8U * (1U << MIN(MAX(params->cParams.hashLog, params->cParams.chainLog), 28)); + if (params->cParams.strategy < ZSTD_btultra) { + U32 maxDictSize = 8U << MIN(MAX(params->cParams.hashLog, params->cParams.chainLog), 27); if (srcSize > maxDictSize) { ip = iend - maxDictSize; src = ip;