From: Yann Collet Date: Fri, 21 Apr 2017 00:38:56 +0000 (-0700) Subject: init entropy table pointers only once X-Git-Tag: v1.2.0^2~26^2~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7bb60b17d860e7a298dfb9984c15fa315a20a58c;p=thirdparty%2Fzstd.git init entropy table pointers only once per workSpace resize --- diff --git a/lib/compress/zstd_compress.c b/lib/compress/zstd_compress.c index e049aa076..ac0519fba 100644 --- a/lib/compress/zstd_compress.c +++ b/lib/compress/zstd_compress.c @@ -294,6 +294,12 @@ static size_t ZSTD_resetCCtx_internal (ZSTD_CCtx* zc, zc->workSpace = ZSTD_malloc(neededSpace, zc->customMem); if (zc->workSpace == NULL) return ERROR(memory_allocation); zc->workSpaceSize = neededSpace; + ptr = zc->workSpace; + + /* entropy space */ + zc->hufTable = (HUF_CElt*)ptr; + ptr = (U32*)zc->hufTable + HUF_CTABLE_SIZE_U32(255); /* note : HUF_CElt* is incomplete type, size is estimated via macro */ + } } /* init params */ @@ -318,10 +324,6 @@ static size_t ZSTD_resetCCtx_internal (ZSTD_CCtx* zc, zc->hashLog3 = hashLog3; zc->seqStore.litLengthSum = 0; - ptr = zc->workSpace; - - /* entropy space */ - zc->hufTable = (HUF_CElt*)ptr; ptr = (U32*)zc->hufTable + HUF_CTABLE_SIZE_U32(255); /* note : HUF_CElt* is incomplete type, size is estimated via macro */ /* opt parser space */