diff --git a/meshroom/core/node.py b/meshroom/core/node.py index 854827b02a..1a6be92189 100644 --- a/meshroom/core/node.py +++ b/meshroom/core/node.py @@ -1603,6 +1603,11 @@ def updateLocked(self): return if currentStatus == Status.SUCCESS: + # Update the status when the lock is reevaluated while the node is + # successfully computed: this ensures all info reflect accurately the status + # (in particular with respect to dynamic output attributes) + self.updateStatusFromCache() + # At this moment, the node is necessarily locked because of previous if statement inputNodes = self.getInputNodes(recursive=True, dependenciesOnly=True) outputNodes = self.getOutputNodes(recursive=True, dependenciesOnly=True)