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
path: root/source
diff options
context:
space:
mode:
authorBastien Montagne <bastien@blender.org>2020-05-12 17:16:30 +0300
committerBastien Montagne <bastien@blender.org>2020-05-12 17:16:30 +0300
commit25c67a65d686aa04570db7409618ad779318c17a (patch)
tree1420b17f49a1ad2ab459904b9e3542418114c980 /source
parentfd271b6b248536c658300dd5b92021e0672ab0bf (diff)
parent8da7ab11cf63d36577b5bd1e96bae637b0bd464c (diff)
Merge branch 'blender-v2.83-release'
Diffstat (limited to 'source')
-rw-r--r--source/blender/blenkernel/intern/scene.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c
index 278f634e53a..650b52e281a 100644
--- a/source/blender/blenkernel/intern/scene.c
+++ b/source/blender/blenkernel/intern/scene.c
@@ -346,6 +346,11 @@ static void scene_free_data(ID *id)
}
if (scene->rigidbody_world) {
+ /* Prevent rigidbody freeing code to follow other IDs pointers, this should never be allowed
+ * nor necessary from here, and with new undo code, those pointers may be fully invalid or
+ * worse, pointing to data actually belonging to new BMain! */
+ scene->rigidbody_world->constraints = NULL;
+ scene->rigidbody_world->group = NULL;
BKE_rigidbody_free_world(scene);
}