diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2016-10-12 17:26:46 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2016-10-12 17:26:46 -0400 |
commit | c104c9d4726f3ba1ecd352d13b88a57f2f964510 (patch) | |
tree | 61c1214d49f6efded889213e612d49fed5612927 /libs/ardour/solo_safe_control.cc | |
parent | 27cff39dc7c8692e309ac0f9c515a583b775fd7d (diff) |
change return type of AutomationControl::actually_set_value() from void to bool, to indicate if value was changed.
Don't call Session::set_dirty() when no change occurs
Diffstat (limited to 'libs/ardour/solo_safe_control.cc')
-rw-r--r-- | libs/ardour/solo_safe_control.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/libs/ardour/solo_safe_control.cc b/libs/ardour/solo_safe_control.cc index 01d56ddf58..7e8de603a7 100644 --- a/libs/ardour/solo_safe_control.cc +++ b/libs/ardour/solo_safe_control.cc @@ -36,7 +36,7 @@ SoloSafeControl::SoloSafeControl (Session& session, std::string const & name) _list->set_interpolation(Evoral::ControlList::Discrete); } -void +bool SoloSafeControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition gcd) { _solo_safe = (val ? true : false); @@ -45,8 +45,12 @@ SoloSafeControl::actually_set_value (double val, PBD::Controllable::GroupControl be retrieved by AutomationControl::get_value (), and emits Changed */ - AutomationControl::actually_set_value (val, gcd); - _session.set_dirty (); + if (AutomationControl::actually_set_value (val, gcd)) { + _session.set_dirty (); + return true; + } + + return false; } double |