Commit: 0f88a3546cbd020af3f5c47b049ae4ecc6bc54ba
Author: Bastien Montagne
Date: Fri Oct 7 10:20:40 2016 +0200
Branches: master
https://developer.blender.org/rB0f88a3546cbd020af3f5c47b049ae4ecc6bc54ba
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... :/
===================================================================
M source/blender/blenkernel/intern/library_query.c
===================================================================
diff --git a/source/blender/blenkernel/intern/library_query.c
b/source/blender/blenkernel/intern/library_query.c
index 85ddd4d..08f9c43 100644
--- a/source/blender/blenkernel/intern/library_query.c
+++ b/source/blender/blenkernel/intern/library_query.c
@@ -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
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs