From 8e1ef54ae9359ed4611ed54230433bae743eca80 Mon Sep 17 00:00:00 2001 From: Habib Gahbiche Date: Tue, 14 Oct 2025 16:56:11 +0200 Subject: [PATCH] Fix #147678: Unsupported/Unlisted nodes can be created from menu-inputs in the compoositor Remove support in the compositor for the following nodes: - Combine Bundle - Separate Bundle - Closure Input - Closure Output - Evaluate Closure - Repeat Input - Repeat Output Pull Request: https://projects.blender.org/blender/blender/pulls/147998 --- source/blender/nodes/geometry/nodes/node_geo_closure.cc | 4 ++-- .../blender/nodes/geometry/nodes/node_geo_combine_bundle.cc | 2 +- .../blender/nodes/geometry/nodes/node_geo_evaluate_closure.cc | 2 +- source/blender/nodes/geometry/nodes/node_geo_repeat.cc | 4 ++-- .../blender/nodes/geometry/nodes/node_geo_separate_bundle.cc | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/source/blender/nodes/geometry/nodes/node_geo_closure.cc b/source/blender/nodes/geometry/nodes/node_geo_closure.cc index d67609d17cd..5064039c024 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_closure.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_closure.cc @@ -137,7 +137,7 @@ static bool node_insert_link(bke::NodeInsertLinkParams ¶ms) static void node_register() { static blender::bke::bNodeType ntype; - common_node_type_base(&ntype, "NodeClosureInput", NODE_CLOSURE_INPUT); + sh_geo_node_type_base(&ntype, "NodeClosureInput", NODE_CLOSURE_INPUT); ntype.ui_name = "Closure Input"; ntype.nclass = NODE_CLASS_INTERFACE; ntype.declare = node_declare; @@ -271,7 +271,7 @@ static void node_blend_read(bNodeTree & /*tree*/, bNode &node, BlendDataReader & static void node_register() { static blender::bke::bNodeType ntype; - common_node_type_base(&ntype, "NodeClosureOutput", NODE_CLOSURE_OUTPUT); + sh_geo_node_type_base(&ntype, "NodeClosureOutput", NODE_CLOSURE_OUTPUT); ntype.ui_name = "Closure Output"; ntype.nclass = NODE_CLASS_INTERFACE; ntype.declare = node_declare; diff --git a/source/blender/nodes/geometry/nodes/node_geo_combine_bundle.cc b/source/blender/nodes/geometry/nodes/node_geo_combine_bundle.cc index 88c46131db3..bac34904910 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_combine_bundle.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_combine_bundle.cc @@ -192,7 +192,7 @@ static void node_register() { static blender::bke::bNodeType ntype; - common_node_type_base(&ntype, "NodeCombineBundle", NODE_COMBINE_BUNDLE); + sh_geo_node_type_base(&ntype, "NodeCombineBundle", NODE_COMBINE_BUNDLE); ntype.ui_name = "Combine Bundle"; ntype.ui_description = "Combine multiple socket values into one."; ntype.nclass = NODE_CLASS_CONVERTER; diff --git a/source/blender/nodes/geometry/nodes/node_geo_evaluate_closure.cc b/source/blender/nodes/geometry/nodes/node_geo_evaluate_closure.cc index cbd3eea3100..48238339fb7 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_evaluate_closure.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_evaluate_closure.cc @@ -220,7 +220,7 @@ static void node_register() { static blender::bke::bNodeType ntype; - common_node_type_base(&ntype, "NodeEvaluateClosure", NODE_EVALUATE_CLOSURE); + sh_geo_node_type_base(&ntype, "NodeEvaluateClosure", NODE_EVALUATE_CLOSURE); ntype.ui_name = "Evaluate Closure"; ntype.ui_description = "Execute a given closure"; ntype.nclass = NODE_CLASS_CONVERTER; diff --git a/source/blender/nodes/geometry/nodes/node_geo_repeat.cc b/source/blender/nodes/geometry/nodes/node_geo_repeat.cc index f371f02b619..3f499b82e82 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_repeat.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_repeat.cc @@ -145,7 +145,7 @@ static int node_shader_fn(GPUMaterial *mat, static void node_register() { static blender::bke::bNodeType ntype; - common_node_type_base(&ntype, "GeometryNodeRepeatInput", GEO_NODE_REPEAT_INPUT); + sh_geo_node_type_base(&ntype, "GeometryNodeRepeatInput", GEO_NODE_REPEAT_INPUT); ntype.ui_name = "Repeat Input"; ntype.enum_name_legacy = "REPEAT_INPUT"; ntype.nclass = NODE_CLASS_INTERFACE; @@ -305,7 +305,7 @@ static int node_shader_fn(GPUMaterial *mat, static void node_register() { static blender::bke::bNodeType ntype; - common_node_type_base(&ntype, "GeometryNodeRepeatOutput", GEO_NODE_REPEAT_OUTPUT); + sh_geo_node_type_base(&ntype, "GeometryNodeRepeatOutput", GEO_NODE_REPEAT_OUTPUT); ntype.ui_name = "Repeat Output"; ntype.enum_name_legacy = "REPEAT_OUTPUT"; ntype.nclass = NODE_CLASS_INTERFACE; diff --git a/source/blender/nodes/geometry/nodes/node_geo_separate_bundle.cc b/source/blender/nodes/geometry/nodes/node_geo_separate_bundle.cc index 4f3a53dcda2..6730352bdb9 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_separate_bundle.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_separate_bundle.cc @@ -238,7 +238,7 @@ static void node_register() { static blender::bke::bNodeType ntype; - common_node_type_base(&ntype, "NodeSeparateBundle", NODE_SEPARATE_BUNDLE); + sh_geo_node_type_base(&ntype, "NodeSeparateBundle", NODE_SEPARATE_BUNDLE); ntype.ui_name = "Separate Bundle"; ntype.ui_description = "Split a bundle into multiple sockets."; ntype.nclass = NODE_CLASS_CONVERTER;