diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2020-03-22 10:57:38 -0600 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2020-03-22 10:57:54 -0600 |
commit | f703385d07e312fd9362087b55d1cf319b6d7df1 (patch) | |
tree | f7d3770f697c3830f4d6f76a0f539cff1ccab952 /libs/ardour/transport_master_manager.cc | |
parent | 1f3145f8ff01d483eeb9d10ec1dd685db7fe47f3 (diff) |
fix slaving to JACK transport (again!)
Diffstat (limited to 'libs/ardour/transport_master_manager.cc')
-rw-r--r-- | libs/ardour/transport_master_manager.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libs/ardour/transport_master_manager.cc b/libs/ardour/transport_master_manager.cc index 3b3923dc0e..f3083f7af6 100644 --- a/libs/ardour/transport_master_manager.cc +++ b/libs/ardour/transport_master_manager.cc @@ -441,6 +441,15 @@ TransportMasterManager::set_current_locked (boost::shared_ptr<TransportMaster> c unblock_disk_output (); + if (c && c->type() == Engine) { + + /* We cannot sync with an already moving JACK transport mechanism, so + * stop it before we start. + */ + + AudioEngine::instance()->transport_stop (); + } + DEBUG_TRACE (DEBUG::Slave, string_compose ("current transport master set to %1\n", (c ? c->name() : string ("none")))); return 0; |