diff --git a/lib/compress/zstd_compress.c b/lib/compress/zstd_compress.c index c21a8c982..5e81c88ca 100644 --- a/lib/compress/zstd_compress.c +++ b/lib/compress/zstd_compress.c @@ -2533,7 +2533,7 @@ static void ZSTD_copyBlockSequences(ZSTD_CCtx* zc) outSeqs[i].offset = rawOffset; /* seqStoreSeqs[i].offset == offCode+1, and ZSTD_updateRep() expects offCode so we provide seqStoreSeqs[i].offset - 1 */ - updatedRepcodes = ZSTD_updateRep(updatedRepcodes.rep, + updatedRepcodes = ZSTD_updateRep(rep, seqStoreSeqs[i].offset - 1, seqStoreSeqs[i].litLength == 0); literalsRead += outSeqs[i].litLength; diff --git a/lib/zstd.h b/lib/zstd.h index 955df70f5..c5cf51e25 100644 --- a/lib/zstd.h +++ b/lib/zstd.h @@ -1327,6 +1327,9 @@ ZSTDLIB_API size_t ZSTD_generateSequences(ZSTD_CCtx* zc, ZSTD_Sequence* outSeqs, * @return : number of sequences left after merging */ ZSTDLIB_API size_t ZSTD_mergeBlockDelimiters(ZSTD_Sequence* sequences, size_t seqsSize); +ZSTDLIB_API size_t ZSTD_compressSequences_ext(void* dst, size_t dstSize, + const ZSTD_Sequence* inSeqs, size_t inSeqsSize); + /*************************************** * Memory management