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 <ideasman42@gmail.com>2021-04-23 02:02:49 +0300
committerCampbell Barton <ideasman42@gmail.com>2021-04-23 02:02:49 +0300
commita23e49c696cf9ac66ecb9c1ad009d38b0a5e9f9f (patch)
treeb731ba323986a6e9700ff602a34c76b58c0eac14 /source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h
parent3cb09f7a835b5af9c39e1599b44af4b151b7e77d (diff)
Fix T86170: Memory leak clearing the Python instance for COW id data
As Python can access COW ID's, ensure it's instance is kept on update. This could happen when the "Use Self" argument was enabled for a driver.
Diffstat (limited to 'source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h')
-rw-r--r--source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h b/source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h
index c6249c83daa..0629dbe62b4 100644
--- a/source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h
+++ b/source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h
@@ -58,6 +58,11 @@ class RuntimeBackup {
* copy-on-write mechanism. */
bool have_backup;
+ /* Struct members of the ID pointer. */
+ struct {
+ void *py_instance;
+ } id_data;
+
AnimationBackup animation_backup;
SceneBackup scene_backup;
SoundBackup sound_backup;