Datablock management: remove 'proxy_from' pointer from 'is ID used' checks.
Pretty much same reason as for the 'from' pointer of shapekeys - runtime data creating loops and 'ghost' dependencies between datablocks. We need to handle them in cases like remapping, but whall not take them into account to check dependencies between datablocks... :/
This commit is contained in:
@@ -1036,6 +1036,10 @@ static int foreach_libblock_id_users_callback(void *user_data, ID *self_id, ID *
|
||||
if ((GS(self_id->name) == ID_KE) && (((Key *)self_id)->from == *id_p)) {
|
||||
return IDWALK_RET_NOP;
|
||||
}
|
||||
/* XXX another hack, for similar reasons as above one. */
|
||||
if ((GS(self_id->name) == ID_OB) && (((Object *)self_id)->proxy_from == (Object *)*id_p)) {
|
||||
return IDWALK_RET_NOP;
|
||||
}
|
||||
|
||||
if (*id_p && (*id_p == iter->id)) {
|
||||
#if 0
|
||||
|
Reference in New Issue
Block a user