From 74e38365e92f34d1738c9a3ec5e128a66f51c1aa Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 10 Jan 2017 10:38:00 +0100 Subject: Fix MTC slave implicit return on transport-stop MTC returns not-locked (no flywheel) when the signal is lost, in which case Session::follow_slave() jumps to no_roll and ignores the slave-position. The MTC slave does explicitly request a transport-locate and transport-stop. Yet, Session::realtime_stop() honors _requested_return_frame for whatever reason --- libs/ardour/session_transport.cc | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'libs/ardour/session_transport.cc') diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index 68e6f49342..5f1384d292 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -746,6 +746,10 @@ Session::non_realtime_stop (bool abort, int on_entry, bool& finished) flush_all_inserts (); } + // rg: what is the logic behind this case? + // _requested_return_frame should be ignored when synced_to_engine/slaved. + // currently worked around in MTC_Slave by forcing _requested_return_frame to -1 + // 2016-01-10 if ((auto_return_enabled || synced_to_engine() || _requested_return_frame >= 0) && !(ptw & PostTransportLocate)) { -- cgit v1.2.3