diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-07-04 14:51:10 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-07-04 14:51:10 +0400 |
commit | 8aa0f9b033eff5aa4f6b66d3148d6379a60ebf06 (patch) | |
tree | 20eae6fde0fcaed87b259d9aad3f26fd1957edd7 /source/blender/editors/space_sequencer/sequencer_edit.c | |
parent | 4a6cc10d756ddccf1912daaa6cef1d1e25538c0c (diff) |
last fix still could give corrupt sound, rather then updating the sound info just add and remove the sound handle.
Diffstat (limited to 'source/blender/editors/space_sequencer/sequencer_edit.c')
-rw-r--r-- | source/blender/editors/space_sequencer/sequencer_edit.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/source/blender/editors/space_sequencer/sequencer_edit.c b/source/blender/editors/space_sequencer/sequencer_edit.c index 1baf30ccc65..9e52c2f4e38 100644 --- a/source/blender/editors/space_sequencer/sequencer_edit.c +++ b/source/blender/editors/space_sequencer/sequencer_edit.c @@ -2678,12 +2678,17 @@ static int sequencer_swap_data_exec(bContext *C, wmOperator *op) return OPERATOR_CANCELLED; } + sound_remove_scene_sound(scene, seq_act->scene_sound); + sound_remove_scene_sound(scene, seq_other->scene_sound); + + seq_act->scene_sound= NULL; + seq_other->scene_sound= NULL; + calc_sequence(scene, seq_act); calc_sequence(scene, seq_other); - /* sound needs to be moved */ - if(seq_act->scene_sound) calc_sequence_disp(scene, seq_act); - if(seq_other->scene_sound) calc_sequence_disp(scene, seq_other); + if(seq_act->sound) sound_add_scene_sound(scene, seq_act, seq_act->startdisp, seq_act->enddisp, seq_act->startofs + seq_act->anim_startofs); + if(seq_other->sound) sound_add_scene_sound(scene, seq_other, seq_other->startdisp, seq_other->enddisp, seq_other->startofs + seq_other->anim_startofs); WM_event_add_notifier(C, NC_SCENE|ND_SEQUENCER, scene); |