Closed kwokcb closed 4 months ago
I think this extra code will fix the issue inside of Version.cpp
(when the port is being updated)
// Update any nodegraph reference
if (graph)
{
const string& portNodeGraphString = port->getNodeGraphString();
if (!portNodeGraphString.empty())
{
const string& graphName = graph->getName();
if (graphName.empty())
{
port->removeAttribute(PortElement::NODE_GRAPH_ATTRIBUTE);
}
else if (graphName != portNodeGraphString)
{
port->setNodeGraphString(graphName);
}
}
}
Thanks for the fix, @kwokcb!
Issue
I tried out the upgrade path for 1.39 which handles inputs with "channels" on it. It seems it will set up an incorrect connection sometimes.
This is using test file that @JGamache-autodesk referenced recently. You end up with these validation errors:
This appears to be due to the fact that it's referencing a "swizzle" which exists outside the nodegraph, but for whatever reason is assumed to be inside the nodegraph. e.g. "Ng2" has no "swizzle" node as one example.
Test Input
Resulting Output