fix transport FSM to stop first and declick later
This commit is contained in:
parent
5048b86d5d
commit
530a4393dc
@ -138,7 +138,6 @@ struct TransportFSM
|
||||
void start_locate_while_stopped (Event const &) const;
|
||||
void interrupt_locate (Event const &) const;
|
||||
void start_declick_for_locate (Event const &);
|
||||
void start_declick_for_stop (Event const &);
|
||||
|
||||
/* guards */
|
||||
|
||||
|
@ -231,7 +231,7 @@ TransportFSM::process_event (Event& ev, bool already_deferred, bool& deferred)
|
||||
switch (_motion_state) {
|
||||
case Rolling:
|
||||
transition (DeclickToStop);
|
||||
start_declick_for_stop (ev);
|
||||
stop_playback ();
|
||||
break;
|
||||
case Stopped:
|
||||
break;
|
||||
@ -316,7 +316,7 @@ TransportFSM::process_event (Event& ev, bool already_deferred, bool& deferred)
|
||||
break;
|
||||
case DeclickToStop:
|
||||
transition (Stopped);
|
||||
stop_playback ();
|
||||
/* transport already stopped */
|
||||
break;
|
||||
default:
|
||||
bad_transition (ev); return false;
|
||||
@ -375,14 +375,6 @@ TransportFSM::stop_playback ()
|
||||
api->stop_transport (_last_stop.abort, _last_stop.clear_state);
|
||||
}
|
||||
|
||||
void
|
||||
TransportFSM::start_declick_for_stop (Event const & s)
|
||||
{
|
||||
assert (s.type == StopTransport);
|
||||
DEBUG_TRACE (DEBUG::TFSMEvents, "start_declick_for_stop\n");
|
||||
_last_stop = s;
|
||||
}
|
||||
|
||||
void
|
||||
TransportFSM::set_roll_after (bool with_roll) const
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user