Fix (unreported) missing remapping of proxy_from pointer.
That would break proxy behavior after a library reload. The usual super-annoying loop-back pointers... At least that one is easily detectable and can be fixed in-place. Found while investigating T64764.
This commit is contained in:
parent
3a702ec028
commit
054dbb833e
Notes:
blender-bot
2023-02-14 11:08:33 +01:00
Referenced by issue #67049, Wind force field: maximum is not work as limit and acts weird Referenced by issue #65119, Blender does not start!
|
@ -241,6 +241,13 @@ static int foreach_libblock_remap_callback(void *user_data, ID *id_self, ID **id
|
|||
if (!is_indirect || is_obj_proxy) {
|
||||
id_remap_data->status |= ID_REMAP_IS_LINKED_DIRECT;
|
||||
}
|
||||
/* We need to remap proxy_from pointer of remapped proxy... sigh. */
|
||||
if (is_obj_proxy && new_id != NULL) {
|
||||
Object *ob = (Object *)id;
|
||||
if (ob->proxy == (Object *)new_id) {
|
||||
ob->proxy->proxy_from = ob;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue