diff options
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r-- | source/blender/blenloader/intern/versioning_290.c | 44 |
1 files changed, 33 insertions, 11 deletions
diff --git a/source/blender/blenloader/intern/versioning_290.c b/source/blender/blenloader/intern/versioning_290.c index de59075559d..e5e04afc927 100644 --- a/source/blender/blenloader/intern/versioning_290.c +++ b/source/blender/blenloader/intern/versioning_290.c @@ -698,6 +698,16 @@ static void do_versions_291_fcurve_handles_limit(FCurve *fcu) } } +static void do_versions_strip_cache_settings_recursive(const ListBase *seqbase) +{ + LISTBASE_FOREACH (Sequence *, seq, seqbase) { + seq->cache_flag = 0; + if (seq->type == SEQ_TYPE_META) { + do_versions_strip_cache_settings_recursive(&seq->seqbase); + } + } +} + /* NOLINTNEXTLINE: readability-function-size */ void blo_do_versions_290(FileData *fd, Library *UNUSED(lib), Main *bmain) { @@ -1479,17 +1489,7 @@ void blo_do_versions_290(FileData *fd, Library *UNUSED(lib), Main *bmain) } } - /** - * Versioning code until next subversion bump goes here. - * - * \note Be sure to check when bumping the version: - * - "versioning_userdef.c", #blo_do_versions_userdef - * - "versioning_userdef.c", #do_versions_theme - * - * \note Keep this message at the bottom of the function. - */ - { - /* Keep this block, even when empty. */ + if (!MAIN_VERSION_ATLEAST(bmain, 292, 10)) { if (!DNA_struct_find(fd->filesdna, "NodeSetAlpha")) { LISTBASE_FOREACH (Scene *, scene, &bmain->scenes) { bNodeTree *nodetree = scene->nodetree; @@ -1508,4 +1508,26 @@ void blo_do_versions_290(FileData *fd, Library *UNUSED(lib), Main *bmain) } } } + + LISTBASE_FOREACH (Scene *, scene, &bmain->scenes) { + Editing *ed = SEQ_editing_get(scene, false); + if (ed == NULL) { + continue; + } + ed->cache_flag = (SEQ_CACHE_STORE_RAW | SEQ_CACHE_STORE_FINAL_OUT); + do_versions_strip_cache_settings_recursive(&ed->seqbase); + } + + /** + * Versioning code until next subversion bump goes here. + * + * \note Be sure to check when bumping the version: + * - "versioning_userdef.c", #blo_do_versions_userdef + * - "versioning_userdef.c", #do_versions_theme + * + * \note Keep this message at the bottom of the function. + */ + { + /* Keep this block, even when empty. */ + } } |