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.
This commit is contained in:
parent
5f2667aa71
commit
669c924e07
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue