From 9d8829f5bfb13776795437cc104be4d8741b86d6 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 17 Feb 2017 03:58:51 +0100 Subject: Remove direct calls to set solo_control() Changing solo-state needs to be done in rt-context to atomically propagate solo/mute. set_control() queues a rt-event, later Session::rt_set_control() calls Session::update_route_solo_state() to propagate solo/mute. --- libs/surfaces/osc/osc.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'libs/surfaces/osc/osc.cc') diff --git a/libs/surfaces/osc/osc.cc b/libs/surfaces/osc/osc.cc index 2a4b1b7d99..c338999fb4 100644 --- a/libs/surfaces/osc/osc.cc +++ b/libs/surfaces/osc/osc.cc @@ -2003,8 +2003,8 @@ OSC::sel_solo (uint32_t yn, lo_message msg) } if (s) { if (s->solo_control()) { - s->solo_control()->set_value (yn ? 1.0 : 0.0, PBD::Controllable::NoGroup); - return sel_fail ("solo", (float) s->solo_control()->get_value(), get_address (msg)); + session->set_control (s->solo_control(), yn ? 1.0 : 0.0, PBD::Controllable::NoGroup); + return sel_fail ("solo", yn, get_address (msg)); } } return sel_fail ("solo", 0, get_address (msg)); -- cgit v1.2.3