[Bf-blender-cvs] [1ba88d4d2fb] master: LibOverride: Resync: Fix too many objects being rooted in master collection.

Bastien Montagne noreply at git.blender.org
Tue Mar 16 16:57:09 CET 2021


Commit: 1ba88d4d2fb0e51f571a8b303bb70941d352e304
Author: Bastien Montagne
Date:   Tue Mar 16 15:08:44 2021 +0100
Branches: master
https://developer.blender.org/rB1ba88d4d2fb0e51f571a8b303bb70941d352e304

LibOverride: Resync: Fix too many objects being rooted in master collection.

No need to instantiate systematically the root object if it is already
instantiated in the scene...

Issue reported by the studio.

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

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 3f47e11f701..1a5e07dd34f 100644
--- a/source/blender/blenkernel/intern/lib_override.c
+++ b/source/blender/blenkernel/intern/lib_override.c
@@ -697,8 +697,10 @@ static void lib_override_library_create_post_process(
         break;
       }
       case ID_OB: {
-        BKE_collection_object_add_from(
-            bmain, scene, (Object *)id_root, ((Object *)id_root->newid));
+        if (BKE_view_layer_base_find(view_layer, (Object *)id_root->newid) == NULL) {
+          BKE_collection_object_add_from(
+              bmain, scene, (Object *)id_root, (Object *)id_root->newid);
+        }
         break;
       }
       default:



More information about the Bf-blender-cvs mailing list