From dfc431fb3d03bc8abceeff0aa9197fd165171561 Mon Sep 17 00:00:00 2001 From: Yann Collet Date: Fri, 28 May 2021 01:10:41 -0700 Subject: fix NULL ptr arithmetic at lz4:2299 --- lib/lz4.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/lz4.c b/lib/lz4.c index 9659962..62a6f6c 100644 --- a/lib/lz4.c +++ b/lib/lz4.c @@ -2298,8 +2298,13 @@ int LZ4_freeStreamDecode (LZ4_streamDecode_t* LZ4_stream) int LZ4_setStreamDecode (LZ4_streamDecode_t* LZ4_streamDecode, const char* dictionary, int dictSize) { LZ4_streamDecode_t_internal* lz4sd = &LZ4_streamDecode->internal_donotuse; - lz4sd->prefixSize = (size_t) dictSize; - lz4sd->prefixEnd = (const BYTE*) dictionary + dictSize; + lz4sd->prefixSize = (size_t)dictSize; + if (dictSize) { + assert(dictionary != NULL); + lz4sd->prefixEnd = (const BYTE*) dictionary + dictSize; + } else { + lz4sd->prefixEnd = (const BYTE*) dictionary; + } lz4sd->externalDict = NULL; lz4sd->extDictSize = 0; return 1; -- cgit v0.12