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;

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to