[Bf-blender-cvs] [6ed0fcc] id-remap: Merge branch 'master' into id-remap

Bastien Montagne noreply at git.blender.org
Wed Oct 7 20:58:49 CEST 2015


Commit: 6ed0fcc1875b3001116f94e93521d285ddb570b0
Author: Bastien Montagne
Date:   Wed Oct 7 20:56:54 2015 +0200
Branches: id-remap
https://developer.blender.org/rB6ed0fcc1875b3001116f94e93521d285ddb570b0

Merge branch 'master' into id-remap

===================================================================



===================================================================

diff --cc source/blender/blenkernel/intern/library_query.c
index e437546,ada7673..0dc770e
--- a/source/blender/blenkernel/intern/library_query.c
+++ b/source/blender/blenkernel/intern/library_query.c
@@@ -304,24 -229,18 +304,25 @@@ void BKE_library_foreach_ID_link(ID *id
  		case ID_OB:
  		{
  			Object *object = (Object *) id;
 +			ID *obdata = object->data;
 +			ParticleSystem *psys;
 +			LodLevel *lod;
 +
 +			CALLBACK_INVOKE_ID(obdata, IDWALK_REFCOUNTED);
 +			object->data = obdata;
  			CALLBACK_INVOKE(object->parent, IDWALK_NOP);
  			CALLBACK_INVOKE(object->track, IDWALK_NOP);
 -			CALLBACK_INVOKE(object->proxy, IDWALK_NOP);
 +			/* object->proxy is refcounted, but not object->proxy_group... *sigh* */
 +			CALLBACK_INVOKE(object->proxy, IDWALK_REFCOUNTED);
  			CALLBACK_INVOKE(object->proxy_group, IDWALK_NOP);
  			CALLBACK_INVOKE(object->proxy_from, IDWALK_NOP);
 -			CALLBACK_INVOKE(object->poselib, IDWALK_NOP);
 +			CALLBACK_INVOKE(object->poselib, IDWALK_REFCOUNTED);
  			for (i = 0; i < object->totcol; i++) {
 -				CALLBACK_INVOKE(object->mat[i], IDWALK_NOP);
 +				CALLBACK_INVOKE(object->mat[i], IDWALK_REFCOUNTED);
  			}
 -			CALLBACK_INVOKE(object->gpd, IDWALK_NOP);
 +			CALLBACK_INVOKE(object->gpd, IDWALK_REFCOUNTED);
  			CALLBACK_INVOKE(object->dup_group, IDWALK_NOP);
+ 
  			if (object->particlesystem.first) {
  				ParticleSystem *psys;
  				for (psys = object->particlesystem.first; psys; psys = psys->next) {
@@@ -415,20 -314,9 +414,20 @@@
  
  		case ID_TE:
  		{
- 			Tex *tex = (Tex *) id;
- 			CALLBACK_INVOKE(tex->nodetree, IDWALK_NOP);
- 			CALLBACK_INVOKE(tex->ima, IDWALK_REFCOUNTED);
- 			if (tex->env) {
- 				CALLBACK_INVOKE(tex->env->object, IDWALK_NOP);
- 				CALLBACK_INVOKE(tex->env->ima, IDWALK_NOP);
+ 			Tex *texture = (Tex *) id;
+ 			CALLBACK_INVOKE(texture->nodetree, IDWALK_NOP);
 -			CALLBACK_INVOKE(texture->ima, IDWALK_NOP);
++			CALLBACK_INVOKE(texture->ima, IDWALK_REFCOUNTED);
++			if (texture->env) {
++				CALLBACK_INVOKE(texture->env->object, IDWALK_NOP);
++				CALLBACK_INVOKE(texture->env->ima, IDWALK_NOP);
 +			}
- 			if (tex->pd)
- 				CALLBACK_INVOKE(tex->pd->object, IDWALK_NOP);
- 			if (tex->vd)
- 				CALLBACK_INVOKE(tex->vd->object, IDWALK_NOP);
- 			if (tex->ot)
- 				CALLBACK_INVOKE(tex->ot->object, IDWALK_NOP);
++			if (texture->pd)
++				CALLBACK_INVOKE(texture->pd->object, IDWALK_NOP);
++			if (texture->vd)
++				CALLBACK_INVOKE(texture->vd->object, IDWALK_NOP);
++			if (texture->ot)
++				CALLBACK_INVOKE(texture->ot->object, IDWALK_NOP);
 +
  			break;
  		}
  
@@@ -529,11 -414,6 +528,13 @@@
  			CALLBACK_INVOKE(psett->dup_group, IDWALK_NOP);
  			CALLBACK_INVOKE(psett->dup_ob, IDWALK_NOP);
  			CALLBACK_INVOKE(psett->bb_ob, IDWALK_NOP);
++
 +			for (i = 0; i < MAX_MTEX; i++) {
 +				if (psett->mtex[i]) {
 +					library_foreach_mtex(&data, psett->mtex[i]);
 +				}
 +			}
++
  			if (psett->effector_weights) {
  				CALLBACK_INVOKE(psett->effector_weights->group, IDWALK_NOP);
  			}
@@@ -564,7 -425,8 +565,8 @@@
  			MovieClip *clip = (MovieClip *) id;
  			MovieTracking *tracking = &clip->tracking;
  			MovieTrackingObject *object;
+ 
 -			CALLBACK_INVOKE(clip->gpd, IDWALK_NOP);
 +			CALLBACK_INVOKE(clip->gpd, IDWALK_REFCOUNTED);
  			for (object = tracking->objects.first; object; object = object->next) {
  				ListBase *tracksbase = BKE_tracking_object_get_tracks(tracking, object);
  				MovieTrackingTrack *track;




More information about the Bf-blender-cvs mailing list