Commit: 90b3dba5151d1297929ec08baf3800755e9e3494
Author: Sergey Sharybin
Date:   Tue Aug 8 15:27:11 2017 +0200
Branches: master
https://developer.blender.org/rB90b3dba5151d1297929ec08baf3800755e9e3494

Fix T52255: New Depsgraph - Constraint and Drivers not working together when 
the driver references itself

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

M       source/blender/depsgraph/intern/builder/deg_builder_relations.cc

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

diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc 
b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
index 0726035b04e..bb8e2a710ef 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
@@ -1091,6 +1091,13 @@ void DepsgraphRelationBuilder::build_driver(ID *id, 
FCurve *fcu)
                        }
                        else if (dtar->flag & DTAR_FLAG_STRUCT_REF) {
                                /* Get node associated with the object's 
transforms. */
+                               if (dtar->id == id) {
+                                       /* Ignore input dependency if we're 
driving properties of
+                                        * the same ID, otherwise we'll be 
ending up in a cyclic
+                                        * dependency here.
+                                        */
+                                       continue;
+                               }
                                OperationKey target_key(dtar->id,
                                                        DEG_NODE_TYPE_TRANSFORM,
                                                        
DEG_OPCODE_TRANSFORM_FINAL);

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to