diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2011-03-23 17:06:44 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2011-03-23 17:06:44 +0300 |
commit | edc5cf1f96f0f0a0eff65a4aa574dfae9c2fc606 (patch) | |
tree | 5ca4482dd77deeb33660e574bca88fedd268b259 /source/blender/windowmanager/intern/wm_files.c | |
parent | 72fe34efb2a9787598fe10c3aefae3f523bd036f (diff) |
Fix #26573, #26574 and #26551: objects on layers not visible on load or undo
restore, would not get their dependencies updated when they became visible.
It happend with a shrinkwrap modifier in these reports, but could happen with
other modifiers too.
Now we keep track of which layers have ever been updated since load, and tag
objects on them to be recalculated when they become visible.
Diffstat (limited to 'source/blender/windowmanager/intern/wm_files.c')
-rw-r--r-- | source/blender/windowmanager/intern/wm_files.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/windowmanager/intern/wm_files.c b/source/blender/windowmanager/intern/wm_files.c index ebf3e856241..35bb874ff71 100644 --- a/source/blender/windowmanager/intern/wm_files.c +++ b/source/blender/windowmanager/intern/wm_files.c @@ -329,7 +329,7 @@ void WM_read_file(bContext *C, const char *name, ReportList *reports) CTX_wm_window_set(C, CTX_wm_manager(C)->windows.first); ED_editors_init(C); - DAG_on_load_update(CTX_data_main(C), TRUE); + DAG_on_visible_update(CTX_data_main(C), TRUE); #ifdef WITH_PYTHON /* run any texts that were loaded in and flagged as modules */ @@ -433,7 +433,7 @@ int WM_read_homefile(bContext *C, ReportList *reports, short from_memory) BKE_write_undo(C, "original"); /* save current state */ ED_editors_init(C); - DAG_on_load_update(CTX_data_main(C), TRUE); + DAG_on_visible_update(CTX_data_main(C), TRUE); #ifdef WITH_PYTHON if(CTX_py_init_get(C)) { |