diff options
author | Alexander Gavrilov <angavrilov@gmail.com> | 2019-04-14 21:53:03 +0300 |
---|---|---|
committer | Alexander Gavrilov <angavrilov@gmail.com> | 2019-04-14 21:55:30 +0300 |
commit | 3731729b96fa2145b7d462dec20277088a75a0c4 (patch) | |
tree | 8153b4c67aeacbfe9d5712a8ea55a9a9d77de810 /source/blender/blenkernel/intern/action.c | |
parent | f5ea1fc4fbafbac6f648ba0d9d9ef16ca8323041 (diff) |
Depsgraph: fix hard CTD on dependency cycles through POSE_INIT.
As reported in T63582, it can cause chan_array to be not ready.
To reliably avoid crashing, the only easy way seems to be to
create the index during COW -- maybe @sergey has a better idea.
Diffstat (limited to 'source/blender/blenkernel/intern/action.c')
-rw-r--r-- | source/blender/blenkernel/intern/action.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/action.c b/source/blender/blenkernel/intern/action.c index 9ba3a23df05..da4fea26e64 100644 --- a/source/blender/blenkernel/intern/action.c +++ b/source/blender/blenkernel/intern/action.c @@ -825,6 +825,8 @@ void BKE_pose_channels_free_ex(bPose *pose, bool do_id_user) } BKE_pose_channels_hash_free(pose); + + MEM_SAFE_FREE(pose->chan_array); } void BKE_pose_channels_free(bPose *pose) |