[Bf-blender-cvs] [ce1d023667c] master: Fix (unreported) liboverride: incomplete hierarchy when root is not object/collection.

Bastien Montagne noreply at git.blender.org
Tue Jul 5 12:59:26 CEST 2022


Commit: ce1d023667c8d3ca565a67f8205e532b9aaad848
Author: Bastien Montagne
Date:   Tue Jul 5 12:45:54 2022 +0200
Branches: master
https://developer.blender.org/rBce1d023667c8d3ca565a67f8205e532b9aaad848

Fix (unreported) liboverride: incomplete hierarchy when root is not object/collection.

We do not (currently) consider other ID types as 'end points' justifying
to create an override hierarchy, however if the 'root' ID (i.e. the ID
the user selected as base to create the override) is not an object or
collection, we still want to check all of its dependencies.

This fixes e.g. if a material depends on another Empty object, and user
tries to hierarchy-override that material, its Empty dependency not
being overridden.

===================================================================

M	source/blender/blenkernel/intern/lib_override.cc

===================================================================

diff --git a/source/blender/blenkernel/intern/lib_override.cc b/source/blender/blenkernel/intern/lib_override.cc
index feb6fb95f5c..d816b5ede5f 100644
--- a/source/blender/blenkernel/intern/lib_override.cc
+++ b/source/blender/blenkernel/intern/lib_override.cc
@@ -937,11 +937,6 @@ static void lib_override_linked_group_tag(LibOverrideGroupTagData *data)
     id_root->tag |= data->tag;
   }
 
-  /* Only objects and groups are currently considered as 'keys' in override hierarchies. */
-  if (!ELEM(GS(id_root->name), ID_OB, ID_GR)) {
-    return;
-  }
-
   /* Tag all collections and objects recursively. */
   lib_override_linked_group_tag_recursive(data);



More information about the Bf-blender-cvs mailing list