summaryrefslogtreecommitdiff
path: root/libs/ardour/route.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/route.cc')
-rw-r--r--libs/ardour/route.cc12
1 files changed, 7 insertions, 5 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc
index 641bc8ef83..94111e602e 100644
--- a/libs/ardour/route.cc
+++ b/libs/ardour/route.cc
@@ -5899,8 +5899,8 @@ void
Route::vca_assign (boost::shared_ptr<VCA> vca)
{
_gain_control->add_master (vca->gain_control());
- vca->add_solo_target (shared_from_this());
- vca->add_mute_target (shared_from_this());
+ _solo_control->add_master (vca->solo_control());
+ _mute_control->add_master (vca->mute_control());
}
void
@@ -5909,10 +5909,12 @@ Route::vca_unassign (boost::shared_ptr<VCA> vca)
if (!vca) {
/* unassign from all */
_gain_control->clear_masters ();
- /* XXXX need to remove from solo/mute target lists */
+ _solo_control->clear_masters ();
+ _mute_control->clear_masters ();
} else {
_gain_control->remove_master (vca->gain_control());
- vca->remove_solo_target (shared_from_this());
- vca->remove_mute_target (shared_from_this());
+ _solo_control->remove_master (vca->solo_control());
+ _mute_control->remove_master (vca->mute_control());
+
}
}