From 23fbc9f22f3dfd7151c4396a17fbe586b0594d81 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 11 Mar 2014 14:44:13 +1100 Subject: Fix T39083: speakers were evaluated multiple times when used in sets also skip checking all objects for speakers when no speakers are in the blend file. --- source/blender/blenkernel/intern/scene.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'source/blender/blenkernel/intern/scene.c') diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c index bc83adb31d3..110e91711f0 100644 --- a/source/blender/blenkernel/intern/scene.c +++ b/source/blender/blenkernel/intern/scene.c @@ -1539,9 +1539,6 @@ static void scene_update_tagged_recursive(EvaluationContext *eval_ctx, Main *bma /* scene drivers... */ scene_update_drivers(bmain, scene); - /* update sound system animation */ - sound_update_scene(scene); - /* update masking curves */ BKE_mask_update_scene(bmain, scene); @@ -1575,6 +1572,8 @@ void BKE_scene_update_tagged(EvaluationContext *eval_ctx, Main *bmain, Scene *sc * in the future this should handle updates for all datablocks, not * only objects and scenes. - brecht */ scene_update_tagged_recursive(eval_ctx, bmain, scene, scene); + /* update sound system animation (TODO, move to depsgraph) */ + sound_update_scene(bmain, scene); /* extra call here to recalc scene animation (for sequencer) */ { @@ -1680,6 +1679,8 @@ void BKE_scene_update_for_newframe_ex(EvaluationContext *eval_ctx, Main *bmain, /* BKE_object_handle_update() on all objects, groups and sets */ scene_update_tagged_recursive(eval_ctx, bmain, sce, sce); + /* update sound system animation (TODO, move to depsgraph) */ + sound_update_scene(bmain, sce); scene_depsgraph_hack(eval_ctx, sce, sce); -- cgit v1.2.3