[Bf-blender-cvs] [720ea8a67df] master: Fix T89963: crash when library override is applied to an object from a linked scene.
Bastien Montagne
noreply at git.blender.org
Thu Aug 5 15:34:10 CEST 2021
Commit: 720ea8a67df06ba2242e7771b349cefd753f7ea5
Author: Bastien Montagne
Date: Thu Aug 5 14:59:31 2021 +0200
Branches: master
https://developer.blender.org/rB720ea8a67df06ba2242e7771b349cefd753f7ea5
Fix T89963: crash when library override is applied to an object from a linked scene.
LibOverride of scenes is not really supported currently, there are many
issues with it.
Will disable most user-accessible ways to create such overrides in a
following commit.
===================================================================
M source/blender/blenkernel/intern/lib_override.c
===================================================================
diff --git a/source/blender/blenkernel/intern/lib_override.c b/source/blender/blenkernel/intern/lib_override.c
index 072304566e5..67ed7d1b394 100644
--- a/source/blender/blenkernel/intern/lib_override.c
+++ b/source/blender/blenkernel/intern/lib_override.c
@@ -1599,6 +1599,17 @@ static void lib_override_library_main_resync_on_library_indirect_level(
(!ID_IS_LINKED(id) && library_indirect_level != 0)) {
continue;
}
+
+ /* We cannot resync a scene that is currently active. */
+ if (id == &scene->id) {
+ id->tag &= ~LIB_TAG_LIB_OVERRIDE_NEED_RESYNC;
+ BKE_reportf(reports->reports,
+ RPT_WARNING,
+ "Scene '%s' was not resynced as it is the currently active one",
+ scene->id.name + 2);
+ continue;
+ }
+
Library *library = id->lib;
int level = 0;
More information about the Bf-blender-cvs
mailing list