triggerbox: fix up post-locate behavior following fix in Route

This commit is contained in:
Paul Davis 2022-08-08 09:11:39 -06:00
parent 5eb4ea0148
commit 34c6931807

View file

@ -710,6 +710,8 @@ Trigger::startup_from_ffwd (BufferSet& bufs, uint32_t loop_cnt)
_startup (bufs, 0, _quantization); _startup (bufs, 0, _quantization);
_loop_cnt = loop_cnt; _loop_cnt = loop_cnt;
_cue_launched = true; _cue_launched = true;
/* if we just fast-forwarded, any pending stop request is irrelevant */
_requests.stop = false;
} }
void void
@ -3158,6 +3160,7 @@ TriggerBox::fast_forward (CueEvents const & cues, samplepos_t transport_position
_currently_playing = trig; _currently_playing = trig;
_locate_armed = true; _locate_armed = true;
_cancel_locate_armed = false;
/* currently playing is now ready to keep running at transport position /* currently playing is now ready to keep running at transport position
* *
* Note that a MIDITrigger will have set a flag so that when we call * Note that a MIDITrigger will have set a flag so that when we call
@ -3170,8 +3173,11 @@ TriggerBox::fast_forward (CueEvents const & cues, samplepos_t transport_position
trig->startup_from_ffwd (bufs, cnt); trig->startup_from_ffwd (bufs, cnt);
_currently_playing = trig; _currently_playing = trig;
_locate_armed = true; _locate_armed = true;
_cancel_locate_armed = false;
} }
_stop_all = false;
return; return;
} }
@ -4475,10 +4481,6 @@ TriggerBox::non_realtime_transport_stop (samplepos_t now, bool /*flush*/)
t->shutdown_from_fwd (); t->shutdown_from_fwd ();
} }
if (now) {
now += playback_offset();
}
fast_forward (_session.cue_events(), now); fast_forward (_session.cue_events(), now);
} }
@ -4491,10 +4493,6 @@ TriggerBox::non_realtime_locate (samplepos_t now)
t->shutdown_from_fwd (); t->shutdown_from_fwd ();
} }
if (now) {
now += playback_offset();
}
fast_forward (_session.cue_events(), now); fast_forward (_session.cue_events(), now);
} }