diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2019-10-27 11:17:49 -0600 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2019-10-27 11:17:49 -0600 |
commit | 1d20feef83daa47bd246df52a6d324425474033e (patch) | |
tree | fef229f71b0b0cdd4df6a5215e0c4cebace473e9 | |
parent | 474a3c5f699c9f31afe98e5cdd26c489e29f7241 (diff) |
make transport work after rewind/ffwd are used
-rw-r--r-- | libs/ardour/session_transport.cc | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index 03f93b8556..6062b20518 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -764,7 +764,13 @@ Session::butler_completed_transport_work () set_post_transport_work (ptw); } - ptw = PostTransportWork (ptw & ~(PostTransportAdjustCaptureBuffering|PostTransportOverWrite)); + bool start_after_butler_done_msg = false; + + if (ptw & PostTransportReverse) { + start_after_butler_done_msg = true; + } + + ptw = PostTransportWork (ptw & ~(PostTransportAdjustCaptureBuffering|PostTransportOverWrite|PostTransportReverse)); set_post_transport_work (ptw); set_next_event (); @@ -774,6 +780,13 @@ Session::butler_completed_transport_work () } DiskReader::dec_no_disk_output (); + + if (start_after_butler_done_msg) { + if (_transport_speed) { + /* reversal is done ... tell TFSM that it is time to start*/ + TFSM_EVENT (TransportFSM::StartTransport); + } + } } void |