diff options
author | Campbell Barton <campbell@blender.org> | 2022-07-16 09:32:36 +0300 |
---|---|---|
committer | Thomas Dinges <blender@dingto.org> | 2022-07-20 16:20:13 +0300 |
commit | c82e9d4ec81c5119b4bf0a211f89273dc3ede9b4 (patch) | |
tree | 8b50c84373e767eb003084946e945fcb96b3dff9 | |
parent | 746e2f02c4cea7aa51a74a3cdc76e1580589f4bf (diff) |
Fix T99744: NULL pointer free with corrupt zSTD reading
-rw-r--r-- | source/blender/blenlib/intern/filereader_zstd.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/blenlib/intern/filereader_zstd.c b/source/blender/blenlib/intern/filereader_zstd.c index 5f114f24fb0..aeb000e9754 100644 --- a/source/blender/blenlib/intern/filereader_zstd.c +++ b/source/blender/blenlib/intern/filereader_zstd.c @@ -281,7 +281,10 @@ static void zstd_close(FileReader *reader) if (zstd->reader.seek) { MEM_freeN(zstd->seek.uncompressed_ofs); MEM_freeN(zstd->seek.compressed_ofs); - MEM_freeN(zstd->seek.cached_content); + /* When an error has occurred this may be NULL, see: T99744. */ + if (zstd->seek.cached_content) { + MEM_freeN(zstd->seek.cached_content); + } } else { MEM_freeN((void *)zstd->in_buf.src); |