Fix #22666: linked data lights lag during transform in GLSL mode.
authorBrecht Van Lommel <brechtvanlommel@pandora.be>
Mon, 5 Jul 2010 11:52:54 +0000 (11:52 +0000)
committerBrecht Van Lommel <brechtvanlommel@pandora.be>
Mon, 5 Jul 2010 11:52:54 +0000 (11:52 +0000)
Actually a depsgraph issue, transforming objects was incorrectly
tagging their data for recalculation.

source/blender/blenkernel/intern/depsgraph.c
source/blender/editors/transform/transform_generics.c

index c1223a5c37f95ed3e67777e2208c8443acae98ad..0dbdd802ff640b0af6f4328e722426eab38f1130 100644 (file)
@@ -2303,8 +2303,10 @@ void DAG_id_flush_update(ID *id, short flag)
                        id= ob->data;
 
                        /* no point in trying in this cases */
-                       if(!id || id->us <= 1)
+                       if(id && id->us <= 1) {
+                               dag_editors_update(bmain, id);
                                id= NULL;
+                       }
                }
        }
 
index 809739186731dcf1329aed067f1e9df1e4f56d97..98ecb07660f91ed6fdd7f0bf69b13cd59ed97007 100644 (file)
@@ -810,7 +810,7 @@ void recalcData(TransInfo *t)
                                /* sets recalc flags fully, instead of flushing existing ones 
                                 * otherwise proxies don't function correctly
                                 */
-                               DAG_id_flush_update(&ob->id, OB_RECALC_ALL); // XXX: OB_RECALC_OB only?  
+                               DAG_id_flush_update(&ob->id, OB_RECALC_OB);
                        }
                }