|
|
@@ -117,9 +117,14 @@ def make_connections_to_ng_dummy(base_tree, tree_path_names, local_nc, all_nc, n
|
|
|
continue # it isn't a real input so I don't think it is good to check it.
|
|
|
to_s = inp.identifier
|
|
|
if not inp.is_linked: # make an autogenerated NC for the inputs of the group node
|
|
|
- signature = ("MANTIS_AUTOGENERATED", *tree_path_names, np.name, inp.name, inp.identifier)
|
|
|
- nc_from = autogen_node(base_tree, inp, signature, nc_to.mContext)
|
|
|
- if nc_from:
|
|
|
+ # This can be run inside schema. Make it unique with uuid() to be safe.
|
|
|
+ from uuid import uuid4
|
|
|
+ signature = ("MANTIS_AUTOGENERATED", *tree_path_names, np.name, inp.name, inp.identifier, str(uuid4()))
|
|
|
+ nc_from = all_nc.get(signature) # creating this without checking and
|
|
|
+ # using UUID signature leads to TERRIBLE CONFUSING BUGS.
|
|
|
+ if nc_from is None:
|
|
|
+ nc_from = autogen_node(base_tree, inp, signature, nc_to.mContext)
|
|
|
+ if nc_from: # autogen can fail and we should catch it.
|
|
|
from .node_container_common import get_socket_value
|
|
|
nc_from.parameters = {inp.name:get_socket_value(inp)}
|
|
|
local_nc[signature] = nc_from; all_nc[signature] = nc_from
|