VibeGeometry/patches/geometry-script/0003-Tolerate-Blender-menu-socket-defaults.patch
2026-05-04 16:00:47 +01:00

31 lines
1.3 KiB
Diff

From 6fbebb8ff2ae13a97b7b87c7a25cf14d72825c07 Mon Sep 17 00:00:00 2001
From: Meta Vens <rwvens@hotmail.com>
Date: Mon, 4 May 2026 15:51:38 +0100
Subject: [PATCH] Tolerate Blender menu socket defaults
---
api/tree.py | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/api/tree.py b/api/tree.py
index b2250a9..a787091 100644
--- a/api/tree.py
+++ b/api/tree.py
@@ -115,8 +115,12 @@ def tree(name):
node_input = node_group.interface.new_socket(socket_type=arg[1][0].socket_type, name=input_name, in_out='INPUT')
else:
node_input = node_group.inputs.new(arg[1][0].socket_type, input_name)
- if arg[1][1] != inspect.Parameter.empty:
- node_input.default_value = arg[1][1]
+ if arg[1][1] != inspect.Parameter.empty and arg[1][1] is not None:
+ try:
+ node_input.default_value = arg[1][1]
+ except TypeError:
+ if getattr(node_input, "bl_socket_idname", "") != "NodeSocketMenu":
+ raise
if arg[1][2] is not None:
if arg[1][2] not in builder_inputs:
builder_inputs[arg[1][2]] = signature.parameters[arg[1][2]].annotation()
--
2.53.0.windows.3