From 5c0ce7311a25fb7f0346c545ec992ff8daf54b10 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 27 Jul 2017 17:27:49 -0400 Subject: reset DiskReader "no disk output" flag in a couple of exceptional cases --- libs/ardour/session_transport.cc | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'libs/ardour/session_transport.cc') diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index ca60796947..07369fff67 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -41,6 +41,7 @@ #include "ardour/butler.h" #include "ardour/click.h" #include "ardour/debug.h" +#include "ardour/disk_reader.h" #include "ardour/location.h" #include "ardour/profile.h" #include "ardour/scene_changer.h" @@ -1831,6 +1832,12 @@ Session::use_sync_source (Slave* new_slave) delete _slave; _slave = new_slave; + + /* slave change, reset any DiskIO block on disk output because it is no + longer valid with a new slave. + */ + DiskReader::set_no_disk_output (false); + MTC_Slave* mtc_slave = dynamic_cast(_slave); if (mtc_slave) { mtc_slave->ActiveChanged.connect_same_thread (mtc_status_connection, boost::bind (&Session::mtc_status_changed, this, _1)); -- cgit v1.2.3