Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2018-04-23 17:42:37 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2018-04-23 17:42:37 +0300
commit53d69e6d048f918b2c9ee61d3e9f27db64fdfa52 (patch)
treebca3d93b8266df10f90019cbf7b070e547c8bd03 /source/blender/depsgraph/intern/eval
parent0ca7a78f20db6f34bf158f671fc5bbc32ee5702c (diff)
Depsgraph: Add relation flag to avoid flush across it
This way we can avoid re-evaluation of certain parts of datablock when something unrelated has changed.
Diffstat (limited to 'source/blender/depsgraph/intern/eval')
-rw-r--r--source/blender/depsgraph/intern/eval/deg_eval_flush.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/eval/deg_eval_flush.cc b/source/blender/depsgraph/intern/eval/deg_eval_flush.cc
index 4033e1325e6..e7764cf5a27 100644
--- a/source/blender/depsgraph/intern/eval/deg_eval_flush.cc
+++ b/source/blender/depsgraph/intern/eval/deg_eval_flush.cc
@@ -223,6 +223,9 @@ BLI_INLINE OperationDepsNode *flush_schedule_children(
{
OperationDepsNode *result = NULL;
foreach (DepsRelation *rel, op_node->outlinks) {
+ if (rel->flag & DEPSREL_FLAG_NO_FLUSH) {
+ continue;
+ }
OperationDepsNode *to_node = (OperationDepsNode *)rel->to;
if (to_node->scheduled == false) {
if (result != NULL) {