summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/ardour/route.cc1
-rw-r--r--libs/ardour/session.cc20
2 files changed, 4 insertions, 17 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index 014c3e6c7b..3ba9a80f99 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -3293,6 +3293,7 @@ Route::enable_monitor_send ()
/* master never sends to monitor section via the normal mechanism */
assert (!is_master ());
assert (!is_monitor ());
+ assert (!is_foldbackbus ());
/* make sure we have one */
if (!_monitor_send) {
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index b6d70db727..4c343bfba2 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -1140,12 +1140,7 @@ Session::add_monitor_section ()
ProcessorChangeBlocker pcb (this, false /* XXX */);
for (RouteList::iterator x = rls->begin(); x != rls->end(); ++x) {
-
- if ((*x)->is_monitor()) {
- /* relax */
- } else if ((*x)->is_master()) {
- /* relax */
- } else {
+ if ((*x)->can_solo ()) {
(*x)->enable_monitor_send ();
}
}
@@ -1265,12 +1260,7 @@ Session::reset_monitor_section ()
ProcessorChangeBlocker pcb (this, false);
for (RouteList::iterator x = rls->begin(); x != rls->end(); ++x) {
-
- if ((*x)->is_monitor()) {
- /* relax */
- } else if ((*x)->is_master()) {
- /* relax */
- } else {
+ if ((*x)->can_solo ()) {
(*x)->enable_monitor_send ();
}
}
@@ -3284,11 +3274,7 @@ Session::add_routes_inner (RouteList& new_routes, bool input_auto_connect, bool
Glib::Threads::Mutex::Lock lm (_engine.process_lock());
for (RouteList::iterator x = new_routes.begin(); x != new_routes.end(); ++x) {
- if ((*x)->is_monitor()) {
- /* relax */
- } else if ((*x)->is_master()) {
- /* relax */
- } else {
+ if ((*x)->can_solo ()) {
(*x)->enable_monitor_send ();
}
}