Revision: 39183
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39183
Author:   blendix
Date:     2011-08-08 13:46:28 +0000 (Mon, 08 Aug 2011)
Log Message:
-----------
Cycles: fix missing update when clearing object transforms.

Modified Paths:
--------------
    branches/cycles/source/blender/editors/object/object_transform.c

Modified: branches/cycles/source/blender/editors/object/object_transform.c
===================================================================
--- branches/cycles/source/blender/editors/object/object_transform.c    
2011-08-08 12:39:02 UTC (rev 39182)
+++ branches/cycles/source/blender/editors/object/object_transform.c    
2011-08-08 13:46:28 UTC (rev 39183)
@@ -246,7 +246,7 @@
                        }
                        
                        /* tag for updates */
-                       ob->recalc |= OB_RECALC_OB;
+                       DAG_id_tag_update(&ob->id, OB_RECALC_OB);
                }
        }
        CTX_DATA_END;
@@ -341,7 +341,8 @@
                        negate_v3_v3(v3, v1);
                        mul_m3_v3(mat, v3);
                }
-               ob->recalc |= OB_RECALC_OB;
+
+               DAG_id_tag_update(&ob->id, OB_RECALC_OB);
        }
        CTX_DATA_END;
 
@@ -871,7 +872,7 @@
                                                                
(ob->dup_group==ob_other->dup_group && (ob->transflag|ob_other->transflag) & 
OB_DUPLIGROUP) )
                                        ) {
                                                ob_other->flag |= OB_DONE;
-                                               ob_other->recalc= 
OB_RECALC_OB|OB_RECALC_DATA;
+                                               
DAG_id_tag_update(&ob_other->id, OB_RECALC_OB|OB_RECALC_DATA);
 
                                                copy_v3_v3(centn, cent);
                                                mul_mat3_m4_v3(ob_other->obmat, 
centn); /* ommit translation part */
@@ -890,11 +891,9 @@
        }
        CTX_DATA_END;
 
-       for (tob= bmain->object.first; tob; tob= tob->id.next) {
-               if(tob->data && (((ID *)tob->data)->flag & LIB_DOIT)) {
-                       tob->recalc= OB_RECALC_OB|OB_RECALC_DATA;
-               }
-       }
+       for (tob= bmain->object.first; tob; tob= tob->id.next)
+               if(tob->data && (((ID *)tob->data)->flag & LIB_DOIT))
+                       DAG_id_tag_update(&tob->id, 
OB_RECALC_OB|OB_RECALC_DATA);
 
        if (tot_change) {
                DAG_ids_flush_update(bmain, 0);

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

Reply via email to