Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <campbell@blender.org>2022-07-16 09:32:36 +0300
committerThomas Dinges <blender@dingto.org>2022-07-20 16:20:13 +0300
commitc82e9d4ec81c5119b4bf0a211f89273dc3ede9b4 (patch)
tree8b50c84373e767eb003084946e945fcb96b3dff9
parent746e2f02c4cea7aa51a74a3cdc76e1580589f4bf (diff)
Fix T99744: NULL pointer free with corrupt zSTD reading
-rw-r--r--source/blender/blenlib/intern/filereader_zstd.c5
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);