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
diff options
context:
space:
mode:
authorAlexander Gavrilov <angavrilov@gmail.com>2022-06-29 19:03:46 +0300
committerAlexander Gavrilov <angavrilov@gmail.com>2022-08-31 19:00:38 +0300
commit2f729bc1117cddd809a8545ae7f4dd424e689dbc (patch)
tree7bef3c865c27470d759cc54fd2b60aecbbf23061 /source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
parentf987d9b7583c1ce45c6c19eec054d023e12a0f57 (diff)
Fix T98525: depsgraph for indirectly referenced ID Properties in drivers.
If the RNA path of a Single Property variable goes through a pointer to a different ID, the property should be attached to that ID using the owner reference in the RNA pointer. This already happened when building some, but not all of the relations and nodes. This patch fixes the remaining cases. Differential Revision: https://developer.blender.org/D15323
Diffstat (limited to 'source/blender/depsgraph/intern/builder/deg_builder_nodes.cc')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_nodes.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index dd62a6cdea2..d25adc279d7 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@ -1219,11 +1219,11 @@ void DepsgraphNodeBuilder::build_driver_id_property(ID *id, const char *rna_path
if (RNA_struct_is_a(ptr.type, &RNA_PoseBone)) {
const bPoseChannel *pchan = static_cast<const bPoseChannel *>(ptr.data);
ensure_operation_node(
- id, NodeType::BONE, pchan->name, OperationCode::ID_PROPERTY, nullptr, prop_identifier);
+ ptr.owner_id, NodeType::BONE, pchan->name, OperationCode::ID_PROPERTY, nullptr, prop_identifier);
}
else {
ensure_operation_node(
- id, NodeType::PARAMETERS, OperationCode::ID_PROPERTY, nullptr, prop_identifier);
+ ptr.owner_id, NodeType::PARAMETERS, OperationCode::ID_PROPERTY, nullptr, prop_identifier);
}
}