Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Montagne <bastien@blender.org>2021-06-03 17:44:20 +0300
committerBastien Montagne <bastien@blender.org>2021-06-03 17:44:20 +0300
commited6fd01ba9cbf4bd7f121ce7be5406c533fd49c2 (patch)
tree2714b66ae66980ff44aa479ad85512ca5accf4ba
parent826bed4349fa2adb8d0fccbb192a3e550030a28d (diff)
LibOverride: fix previous commit (rB826bed4349fa).
-rw-r--r--source/blender/blenkernel/intern/lib_override.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/lib_override.c b/source/blender/blenkernel/intern/lib_override.c
index 80c544f8e5c..beae8b59db4 100644
--- a/source/blender/blenkernel/intern/lib_override.c
+++ b/source/blender/blenkernel/intern/lib_override.c
@@ -1354,16 +1354,17 @@ static void lib_override_resync_tagging_finalize_recurse(Main *bmain,
for (MainIDRelationsEntryItem *entry_item = entry->from_ids; entry_item != NULL;
entry_item = entry_item->next) {
- if (entry_item->usage_flag & IDWALK_CB_OVERRIDE_LIBRARY_NOT_OVERRIDABLE) {
+ if (entry_item->usage_flag &
+ (IDWALK_CB_OVERRIDE_LIBRARY_NOT_OVERRIDABLE | IDWALK_CB_LOOPBACK)) {
continue;
}
ID *id_from = entry_item->id_pointer.from;
/* Case where this ID pointer was to a linked ID, that now needs to be overridden. */
- if (ID_IS_OVERRIDE_LIBRARY_REAL(id_from) && id_from->lib == id->lib) {
+ if (id_from != id && ID_IS_OVERRIDE_LIBRARY_REAL(id_from) && id_from->lib == id->lib) {
id_from->tag |= LIB_TAG_LIB_OVERRIDE_NEED_RESYNC;
CLOG_INFO(&LOG,
- 3,
+ 4,
"ID %s (%p) now tagged as needing resync because they use %s (%p) that needs to "
"be overridden",
id_from->name,
@@ -1372,7 +1373,6 @@ static void lib_override_resync_tagging_finalize_recurse(Main *bmain,
id->lib);
lib_override_resync_tagging_finalize_recurse(bmain, id_from, library_indirect_level);
}
- break;
}
}