[Bf-blender-cvs] [b3165fb8b56] blender-v2.90-release: Fix (unreported) glitch when making liboverride of object from IDtemplate.
Bastien Montagne
noreply at git.blender.org
Wed Aug 12 19:03:09 CEST 2020
Commit: b3165fb8b5689c3003292080b5783a22f48e77ec
Author: Bastien Montagne
Date: Wed Aug 12 17:57:38 2020 +0200
Branches: blender-v2.90-release
https://developer.blender.org/rBb3165fb8b5689c3003292080b5783a22f48e77ec
Fix (unreported) glitch when making liboverride of object from IDtemplate.
We need to ensure new override is instantiated in the scene...
Reported by @Severin, thanks.
===================================================================
M source/blender/editors/interface/interface_templates.c
===================================================================
diff --git a/source/blender/editors/interface/interface_templates.c b/source/blender/editors/interface/interface_templates.c
index d3487b635ce..50148d8a8cd 100644
--- a/source/blender/editors/interface/interface_templates.c
+++ b/source/blender/editors/interface/interface_templates.c
@@ -572,6 +572,15 @@ static void template_id_cb(bContext *C, void *arg_litem, void *arg_event)
if (override_id != NULL) {
BKE_main_id_clear_newpoins(bmain);
+ if (GS(override_id->name) == ID_OB) {
+ Scene *scene = CTX_data_scene(C);
+ if (!BKE_collection_has_object_recursive(scene->master_collection,
+ (Object *)override_id)) {
+ BKE_collection_object_add_from(
+ bmain, scene, (Object *)id, (Object *)override_id);
+ }
+ }
+
/* Assign new pointer, takes care of updates/notifiers */
RNA_id_pointer_create(override_id, &idptr);
}
More information about the Bf-blender-cvs
mailing list