Fix #127051: Compositing using multiple Levels nodes freezes Blender

Multiple levels nodes in a row causes blender to freeze when combined with other constant operations. Also, current results of standard deviation are wrong.

The problem was that constant folding optimized constant operations away, which caused a cyclic node graph, and therefore the freeze during node graph evaluation. Preventing such optimizations solves the problem.

Pull Request: https://projects.blender.org/blender/blender/pulls/127316
This commit is contained in:
Habib Gahbiche
2024-09-26 01:37:23 +02:00
committed by Habib Gahbiche
parent 7ec12a784b
commit aac0c2cc5f

View File

@@ -16,7 +16,9 @@ CalculateMeanOperation::CalculateMeanOperation()
this->add_output_socket(DataType::Value);
is_calculated_ = false;
setting_ = 1;
flags_.is_constant_operation = true;
/* Prevent optimization by constant folder. */
flags_.is_constant_operation = false;
needs_canvas_to_get_constant_ = true;
}