fix update() of nodes with multiple input
This commit is contained in:
parent
1036edf618
commit
88091a6f93
@ -381,22 +381,22 @@ class Flowchart(Node):
|
|||||||
terms = set(startNode.outputs().values())
|
terms = set(startNode.outputs().values())
|
||||||
|
|
||||||
#print "======= Updating", startNode
|
#print "======= Updating", startNode
|
||||||
#print "Order:", order
|
# print("Order:", order)
|
||||||
for node in order[1:]:
|
for node in order[1:]:
|
||||||
#print "Processing node", node
|
# print("Processing node", node)
|
||||||
|
update = False
|
||||||
for term in list(node.inputs().values()):
|
for term in list(node.inputs().values()):
|
||||||
#print " checking terminal", term
|
# print(" checking terminal", term)
|
||||||
deps = list(term.connections().keys())
|
deps = list(term.connections().keys())
|
||||||
update = False
|
|
||||||
for d in deps:
|
for d in deps:
|
||||||
if d in terms:
|
if d in terms:
|
||||||
#print " ..input", d, "changed"
|
# print(" ..input", d, "changed")
|
||||||
update = True
|
update |= True
|
||||||
term.inputChanged(d, process=False)
|
term.inputChanged(d, process=False)
|
||||||
if update:
|
if update:
|
||||||
#print " processing.."
|
# print(" processing..")
|
||||||
node.update()
|
node.update()
|
||||||
terms |= set(node.outputs().values())
|
terms |= set(node.outputs().values())
|
||||||
|
|
||||||
finally:
|
finally:
|
||||||
self.processing = False
|
self.processing = False
|
||||||
|
Loading…
x
Reference in New Issue
Block a user