diff options
author | Julian Eisel <julian@blender.org> | 2020-03-17 22:20:22 +0300 |
---|---|---|
committer | Julian Eisel <julian@blender.org> | 2020-03-17 22:20:22 +0300 |
commit | a640587e25e43be8007fa0090a59fd9bb6d51e39 (patch) | |
tree | ef780ec436232535a9e36ac233de1792ee8ba9e4 /source/blender/depsgraph/intern/depsgraph_tag.cc | |
parent | 99eb95337f74f1a303c774902ea29f7d378bac1b (diff) | |
parent | 892637f60afbbb787334caa26f5342baf1d4a7d7 (diff) |
Merge branch 'temp-openxr-blenderside' into soc-2019-openxrsoc-2019-openxr
Diffstat (limited to 'source/blender/depsgraph/intern/depsgraph_tag.cc')
-rw-r--r-- | source/blender/depsgraph/intern/depsgraph_tag.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/depsgraph_tag.cc b/source/blender/depsgraph/intern/depsgraph_tag.cc index b019c079dab..8decb9f6b87 100644 --- a/source/blender/depsgraph/intern/depsgraph_tag.cc +++ b/source/blender/depsgraph/intern/depsgraph_tag.cc @@ -814,12 +814,16 @@ void DEG_ids_check_recalc( static void deg_graph_clear_id_recalc_flags(ID *id) { + /* Keep incremental track of used recalc flags, to get proper update when undoing. */ + id->recalc_undo_accumulated |= id->recalc; id->recalc &= ~ID_RECALC_ALL; bNodeTree *ntree = ntreeFromID(id); /* Clear embedded node trees too. */ if (ntree) { + ntree->id.recalc_undo_accumulated |= ntree->id.recalc; ntree->id.recalc &= ~ID_RECALC_ALL; } + /* XXX And what about scene's master collection here? */ } void DEG_ids_clear_recalc(Main *UNUSED(bmain), Depsgraph *depsgraph) |