diff options
author | Sergey Senozhatsky <senozhatsky@chromium.org> | 2024-09-02 12:55:51 +0200 |
---|---|---|
committer | Andrew Morton <akpm@linux-foundation.org> | 2024-09-10 01:39:06 +0200 |
commit | f3c11cf5cae044668f888a50abb37b29600ca197 (patch) | |
tree | bb9eec9dd413214afaa411ba659154a778375d7b | |
parent | lib: lz4hc: export LZ4_resetStreamHC symbol (diff) | |
download | linux-f3c11cf5cae044668f888a50abb37b29600ca197.tar.xz linux-f3c11cf5cae044668f888a50abb37b29600ca197.zip |
lib: zstd: fix null-deref in ZSTD_createCDict_advanced2()
ZSTD_createCDict_advanced2() must ensure that
ZSTD_createCDict_advanced_internal() has successfully allocated cdict.
customMalloc() may be called under low memory condition and may be unable
to allocate workspace for cdict.
Link: https://lkml.kernel.org/r/20240902105656.1383858-4-senozhatsky@chromium.org
Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org>
Cc: Nick Terrell <terrelln@fb.com>
Cc: Minchan Kim <minchan@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-rw-r--r-- | lib/zstd/compress/zstd_compress.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/zstd/compress/zstd_compress.c b/lib/zstd/compress/zstd_compress.c index f620cafca633..16bb995bc6c4 100644 --- a/lib/zstd/compress/zstd_compress.c +++ b/lib/zstd/compress/zstd_compress.c @@ -4810,6 +4810,8 @@ ZSTD_CDict* ZSTD_createCDict_advanced2( dictLoadMethod, cctxParams.cParams, cctxParams.useRowMatchFinder, cctxParams.enableDedicatedDictSearch, customMem); + if (!cdict) + return NULL; if (ZSTD_isError( ZSTD_initCDict_internal(cdict, dict, dictSize, |