[Bf-blender-cvs] [2e97d50d2d3] master: Fix T70409: Propagate Pose not updating correctly

Sybren A. Stüvel noreply at git.blender.org
Wed Oct 2 16:11:59 CEST 2019


Commit: 2e97d50d2d3bdba1ba151d96a6b40382f07785c4
Author: Sybren A. Stüvel
Date:   Wed Oct 2 16:08:46 2019 +0200
Branches: master
https://developer.blender.org/rB2e97d50d2d3bdba1ba151d96a6b40382f07785c4

Fix T70409: Propagate Pose not updating correctly

The Action was changed without tagging it as such in the depsgraph.
Thanks @sergey for the sanity check!

===================================================================

M	source/blender/editors/armature/pose_utils.c

===================================================================

diff --git a/source/blender/editors/armature/pose_utils.c b/source/blender/editors/armature/pose_utils.c
index 3f6db956643..8d2d7d790d2 100644
--- a/source/blender/editors/armature/pose_utils.c
+++ b/source/blender/editors/armature/pose_utils.c
@@ -32,6 +32,7 @@
 #include "DNA_scene_types.h"
 
 #include "BKE_action.h"
+#include "BKE_animsys.h"
 #include "BKE_armature.h"
 #include "BKE_idprop.h"
 #include "BKE_layer.h"
@@ -223,6 +224,11 @@ void poseAnim_mapping_refresh(bContext *C, Scene *UNUSED(scene), Object *ob)
 {
   DEG_id_tag_update(&ob->id, ID_RECALC_GEOMETRY);
   WM_event_add_notifier(C, NC_OBJECT | ND_POSE, ob);
+
+  AnimData *adt = BKE_animdata_from_id(&ob->id);
+  if (adt && adt->action) {
+    DEG_id_tag_update(&adt->action->id, ID_RECALC_ANIMATION_NO_FLUSH);
+  }
 }
 
 /* reset changes made to current pose */



More information about the Bf-blender-cvs mailing list