diff options
author | Bastien Montagne <bastien@blender.org> | 2020-05-12 17:16:30 +0300 |
---|---|---|
committer | Bastien Montagne <bastien@blender.org> | 2020-05-12 17:16:30 +0300 |
commit | 25c67a65d686aa04570db7409618ad779318c17a (patch) | |
tree | 1420b17f49a1ad2ab459904b9e3542418114c980 /source/blender/blenkernel/intern/scene.c | |
parent | fd271b6b248536c658300dd5b92021e0672ab0bf (diff) | |
parent | 8da7ab11cf63d36577b5bd1e96bae637b0bd464c (diff) |
Merge branch 'blender-v2.83-release'
Diffstat (limited to 'source/blender/blenkernel/intern/scene.c')
-rw-r--r-- | source/blender/blenkernel/intern/scene.c | 5 |
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); } |