Commit: 669c924e07c1a363c805d36aca799fa11c5a80a8 Author: Bastien Montagne Date: Tue Aug 16 18:37:51 2022 +0200 Branches: blender-v3.3-release https://developer.blender.org/rB669c924e07c1a363c805d36aca799fa11c5a80a8
Fix (unreported) bug in liboverride 'leaves' detection. Loopback ID pointers should be ignored here as well, otherwise they are very efficient at preventing proper detection of 'leaf' override IDs in a hierarchy. =================================================================== 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 05a00fb54fd..58846aab4df 100644 --- a/source/blender/blenkernel/intern/lib_override.cc +++ b/source/blender/blenkernel/intern/lib_override.cc @@ -366,6 +366,10 @@ static int foreachid_is_hierarchy_leaf_fn(LibraryIDLinkCallbackData *cb_data) ID *id = *cb_data->id_pointer; bool *is_leaf = static_cast<bool *>(cb_data->user_data); + if (cb_data->cb_flag & IDWALK_CB_LOOPBACK) { + return IDWALK_RET_NOP; + } + if (id != nullptr && ID_IS_OVERRIDE_LIBRARY_REAL(id) && id->override_library->hierarchy_root == id_owner->override_library->hierarchy_root) { *is_leaf = false; _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs