summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gtk2_ardour/io_selector.cc2
-rw-r--r--libs/ardour/session.cc2
2 files changed, 4 insertions, 0 deletions
diff --git a/gtk2_ardour/io_selector.cc b/gtk2_ardour/io_selector.cc
index 30c581367d..f3bc947355 100644
--- a/gtk2_ardour/io_selector.cc
+++ b/gtk2_ardour/io_selector.cc
@@ -136,6 +136,8 @@ IOSelector::set_state (ARDOUR::BundleChannel c[2], bool s)
ARDOUR::Bundle::PortList const & our_ports = c[_ours].bundle->channel_ports (c[_ours].channel);
ARDOUR::Bundle::PortList const & other_ports = c[_other].bundle->channel_ports (c[_other].channel);
+ Glib::Mutex::Lock lm (AudioEngine::instance()->process_lock());
+
for (ARDOUR::Bundle::PortList::const_iterator i = our_ports.begin(); i != our_ports.end(); ++i) {
for (ARDOUR::Bundle::PortList::const_iterator j = other_ports.begin(); j != other_ports.end(); ++j) {
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index 06fd2ec41d..5457f514e4 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -548,6 +548,8 @@ Session::when_engine_running ()
if (_is_new && !no_auto_connect()) {
+ Glib::Mutex::Lock lm (AudioEngine::instance()->process_lock());
+
/* don't connect the master bus outputs if there is a monitor bus */
if (_master_out && Config->get_auto_connect_standard_busses() && !_monitor_out) {