[Bf-blender-cvs] [37b02b04324] blender-v3.4-release: Fix T102965: Crash when compiling shader tree with undefined mix nodes
Miguel Pozo
noreply at git.blender.org
Tue Dec 6 16:39:25 CET 2022
Commit: 37b02b043246b416d66daf8aae60aaf9d9cd2506
Author: Miguel Pozo
Date: Tue Dec 6 16:39:21 2022 +0100
Branches: blender-v3.4-release
https://developer.blender.org/rB37b02b043246b416d66daf8aae60aaf9d9cd2506
Fix T102965: Crash when compiling shader tree with undefined mix nodes
node_set_typeinfo leaves the bNode::type value as-is for nodes with undefined types.
===================================================================
M source/blender/nodes/shader/node_shader_tree.cc
===================================================================
diff --git a/source/blender/nodes/shader/node_shader_tree.cc b/source/blender/nodes/shader/node_shader_tree.cc
index 7b5f150dfef..46ec1cff852 100644
--- a/source/blender/nodes/shader/node_shader_tree.cc
+++ b/source/blender/nodes/shader/node_shader_tree.cc
@@ -1038,10 +1038,10 @@ static void shader_node_disconnect_inactive_mix_branch(bNodeTree *ntree,
static void ntree_shader_disconnect_inactive_mix_branches(bNodeTree *ntree)
{
LISTBASE_FOREACH (bNode *, node, &ntree->nodes) {
- if (node->type == SH_NODE_MIX_SHADER) {
+ if (node->typeinfo->type == SH_NODE_MIX_SHADER) {
shader_node_disconnect_inactive_mix_branch(ntree, node, 0, 1, 2, true);
}
- else if (node->type == SH_NODE_MIX) {
+ else if (node->typeinfo->type == SH_NODE_MIX) {
const NodeShaderMix *storage = static_cast<NodeShaderMix *>(node->storage);
if (storage->data_type == SOCK_FLOAT) {
shader_node_disconnect_inactive_mix_branch(ntree, node, 0, 2, 3, storage->clamp_factor);
More information about the Bf-blender-cvs
mailing list