Avoid Redundancy in ZSTD_initCDict_internal() Args; Don't Take CParams + CCtxParams

This commit is contained in:
W. Felix Handte 2020-09-17 12:08:36 -04:00
parent eee51a664a
commit e8a44326fa

View File

@ -3416,12 +3416,11 @@ static size_t ZSTD_initCDict_internal(
const void* dictBuffer, size_t dictSize, const void* dictBuffer, size_t dictSize,
ZSTD_dictLoadMethod_e dictLoadMethod, ZSTD_dictLoadMethod_e dictLoadMethod,
ZSTD_dictContentType_e dictContentType, ZSTD_dictContentType_e dictContentType,
ZSTD_compressionParameters cParams,
ZSTD_CCtx_params params) ZSTD_CCtx_params params)
{ {
DEBUGLOG(3, "ZSTD_initCDict_internal (dictContentType:%u)", (unsigned)dictContentType); DEBUGLOG(3, "ZSTD_initCDict_internal (dictContentType:%u)", (unsigned)dictContentType);
assert(!ZSTD_checkCParams(cParams)); assert(!ZSTD_checkCParams(params.cParams));
cdict->matchState.cParams = cParams; cdict->matchState.cParams = params.cParams;
cdict->matchState.dedicatedDictSearch = params.enableDedicatedDictSearch; cdict->matchState.dedicatedDictSearch = params.enableDedicatedDictSearch;
if (cdict->matchState.dedicatedDictSearch && dictSize > ZSTD_CHUNKSIZE_MAX) { if (cdict->matchState.dedicatedDictSearch && dictSize > ZSTD_CHUNKSIZE_MAX) {
cdict->matchState.dedicatedDictSearch = 0; cdict->matchState.dedicatedDictSearch = 0;
@ -3444,7 +3443,7 @@ static size_t ZSTD_initCDict_internal(
FORWARD_IF_ERROR(ZSTD_reset_matchState( FORWARD_IF_ERROR(ZSTD_reset_matchState(
&cdict->matchState, &cdict->matchState,
&cdict->workspace, &cdict->workspace,
&cParams, &params.cParams,
ZSTDcrp_makeClean, ZSTDcrp_makeClean,
ZSTDirp_reset, ZSTDirp_reset,
ZSTD_resetTarget_CDict), ""); ZSTD_resetTarget_CDict), "");
@ -3453,7 +3452,6 @@ static size_t ZSTD_initCDict_internal(
*/ */
{ params.compressionLevel = ZSTD_CLEVEL_DEFAULT; { params.compressionLevel = ZSTD_CLEVEL_DEFAULT;
params.fParams.contentSizeFlag = 1; params.fParams.contentSizeFlag = 1;
params.cParams = cParams;
{ size_t const dictID = ZSTD_compress_insertDictionary( { size_t const dictID = ZSTD_compress_insertDictionary(
&cdict->cBlockState, &cdict->matchState, NULL, &cdict->workspace, &cdict->cBlockState, &cdict->matchState, NULL, &cdict->workspace,
&params, cdict->dictContent, cdict->dictContentSize, &params, cdict->dictContent, cdict->dictContentSize,
@ -3547,14 +3545,16 @@ ZSTDLIB_API ZSTD_CDict* ZSTD_createCDict_advanced2(
&cctxParams, ZSTD_CONTENTSIZE_UNKNOWN, dictSize); &cctxParams, ZSTD_CONTENTSIZE_UNKNOWN, dictSize);
} }
cctxParams.cParams = cParams;
cdict = ZSTD_createCDict_advanced_internal(dictSize, cdict = ZSTD_createCDict_advanced_internal(dictSize,
dictLoadMethod, cParams, dictLoadMethod, cctxParams.cParams,
customMem); customMem);
if (ZSTD_isError( ZSTD_initCDict_internal(cdict, if (ZSTD_isError( ZSTD_initCDict_internal(cdict,
dict, dictSize, dict, dictSize,
dictLoadMethod, dictContentType, dictLoadMethod, dictContentType,
cParams, cctxParams) )) { cctxParams) )) {
ZSTD_freeCDict(cdict); ZSTD_freeCDict(cdict);
return NULL; return NULL;
} }
@ -3638,11 +3638,12 @@ const ZSTD_CDict* ZSTD_initStaticCDict(
if (workspaceSize < neededSize) return NULL; if (workspaceSize < neededSize) return NULL;
ZSTD_memset(&params, 0, sizeof(params)); ZSTD_memset(&params, 0, sizeof(params));
params.cParams = cParams;
if (ZSTD_isError( ZSTD_initCDict_internal(cdict, if (ZSTD_isError( ZSTD_initCDict_internal(cdict,
dict, dictSize, dict, dictSize,
dictLoadMethod, dictContentType, dictLoadMethod, dictContentType,
cParams, params) )) params) ))
return NULL; return NULL;
return cdict; return cdict;