diff options
author | Bastien Montagne <bastien@blender.org> | 2021-04-30 19:49:44 +0300 |
---|---|---|
committer | Bastien Montagne <bastien@blender.org> | 2021-04-30 19:49:44 +0300 |
commit | 5e53504b3bc0b6c6e505256a347333472938f8ba (patch) | |
tree | 9ce5e7c56b874f99daa681245161fd9ac2a0f294 /source/blender/blenkernel/intern | |
parent | 436529d4f69e247e7860334b8d9b1df3ef408726 (diff) | |
parent | e61020049aa685ceb8d85611faba02f55d9d170b (diff) |
Merge branch 'blender-v2.93-release'
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r-- | source/blender/blenkernel/intern/lib_override.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/lib_override.c b/source/blender/blenkernel/intern/lib_override.c index 40b7681614d..45ba2526da2 100644 --- a/source/blender/blenkernel/intern/lib_override.c +++ b/source/blender/blenkernel/intern/lib_override.c @@ -1224,6 +1224,13 @@ void BKE_lib_override_library_main_resync(Main *bmain, Scene *scene, ViewLayer * } do_continue = true; + /* In complex non-supported cases, with several different override hierarchies sharing + * relations between each-other, we may end up not actually updating/replacing the given + * root id (see e.g. pro/shots/110_rextoria/110_0150_A/110_0150_A.anim.blend of sprites + * project repository, r2687). + * This can lead to infinite loop here, at least avoid this. */ + id->tag &= ~LIB_TAG_LIB_OVERRIDE_NEED_RESYNC; + CLOG_INFO(&LOG, 2, "Resyncing %s...", id->name); const bool success = BKE_lib_override_library_resync( bmain, scene, view_layer, id, override_resync_residual_storage, false, false); |