| 24318 | |
| 24319 | |
| 24320 | static size_t ZSTD_initDDict_internal(ZSTD_DDict* ddict, |
| 24321 | const void* dict, size_t dictSize, |
| 24322 | ZSTD_dictLoadMethod_e dictLoadMethod, |
| 24323 | ZSTD_dictContentType_e dictContentType) |
| 24324 | { |
| 24325 | if ((dictLoadMethod == ZSTD_dlm_byRef) || (!dict) || (!dictSize)) { |
| 24326 | ddict->dictBuffer = NULL; |
| 24327 | ddict->dictContent = dict; |
| 24328 | if (!dict) dictSize = 0; |
| 24329 | } else { |
| 24330 | void* const internalBuffer = ZSTD_malloc(dictSize, ddict->cMem); |
| 24331 | ddict->dictBuffer = internalBuffer; |
| 24332 | ddict->dictContent = internalBuffer; |
| 24333 | if (!internalBuffer) return ERROR(memory_allocation); |
| 24334 | memcpy(internalBuffer, dict, dictSize); |
| 24335 | } |
| 24336 | ddict->dictSize = dictSize; |
| 24337 | ddict->entropy.hufTable[0] = (HUF_DTable)((HufLog)*0x1000001); /* cover both little and big endian */ |
| 24338 | |
| 24339 | /* parse dictionary content */ |
| 24340 | FORWARD_IF_ERROR( ZSTD_loadEntropy_intoDDict(ddict, dictContentType) , ""); |
| 24341 | |
| 24342 | return 0; |
| 24343 | } |
| 24344 | |
| 24345 | ZSTD_DDict* ZSTD_createDDict_advanced(const void* dict, size_t dictSize, |
| 24346 | ZSTD_dictLoadMethod_e dictLoadMethod, |
no test coverage detected