[Bf-blender-cvs] [9067cd64a50] blender-v2.91-release: Fix T82466: Library Overrides: overrides disappear when appending.

Bastien Montagne noreply at git.blender.org
Thu Nov 12 11:50:44 CET 2020


Commit: 9067cd64a5083c214fd37fd65bea374312abad10
Author: Bastien Montagne
Date:   Thu Nov 12 11:48:59 2020 +0100
Branches: blender-v2.91-release
https://developer.blender.org/rB9067cd64a5083c214fd37fd65bea374312abad10

Fix T82466: Library Overrides: overrides disappear when appending.

`BKE_library_make_local` was not properly checking for tags and/or libs
in liboverrides case.

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

M	source/blender/blenkernel/intern/lib_id.c

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

diff --git a/source/blender/blenkernel/intern/lib_id.c b/source/blender/blenkernel/intern/lib_id.c
index ae6ee71da82..b0f38001d01 100644
--- a/source/blender/blenkernel/intern/lib_id.c
+++ b/source/blender/blenkernel/intern/lib_id.c
@@ -1884,7 +1884,9 @@ void BKE_library_make_local(Main *bmain,
       if (id->lib == NULL) {
         id->tag &= ~(LIB_TAG_EXTERN | LIB_TAG_INDIRECT | LIB_TAG_NEW);
         id->flag &= ~LIB_INDIRECT_WEAK_LINK;
-        if (ID_IS_OVERRIDE_LIBRARY_REAL(id)) {
+        if (ID_IS_OVERRIDE_LIBRARY_REAL(id) &&
+            ELEM(lib, NULL, id->override_library->reference->lib) &&
+            ((untagged_only == false) || !(id->tag & LIB_TAG_PRE_EXISTING))) {
           BKE_lib_override_library_free(&id->override_library, true);
         }
       }



More information about the Bf-blender-cvs mailing list