X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fsolo_isolate_control.cc;h=e4d551168b7f1437ae1bc2162dfbfd5b95667150;hb=cf52d6e4b40111eb04b244ec054055a4ec15dbe0;hp=a913a9810e45b4b9691cbde9f5595751b7bff099;hpb=b9ba91ac1d20fb57eb19a6639080ae45244436b8;p=ardour.git diff --git a/libs/ardour/solo_isolate_control.cc b/libs/ardour/solo_isolate_control.cc index a913a9810e..e4d551168b 100644 --- a/libs/ardour/solo_isolate_control.cc +++ b/libs/ardour/solo_isolate_control.cc @@ -21,7 +21,7 @@ #include "ardour/session.h" #include "ardour/solo_isolate_control.h" -#include "i18n.h" +#include "pbd/i18n.h" using namespace ARDOUR; using namespace std; @@ -146,8 +146,7 @@ double SoloIsolateControl::get_value () const { if (slaved()) { - Glib::Threads::RWLock::ReaderLock lm (master_lock); - return get_masters_value_locked () ? 1.0 : 0.0; + return solo_isolated() || get_masters_value (); } if (_list && boost::dynamic_pointer_cast(_list)->automation_playback()) { @@ -155,7 +154,7 @@ SoloIsolateControl::get_value () const return AutomationControl::get_value(); } - return solo_isolated () ? 1.0 : 0.0; + return solo_isolated (); } int