summaryrefslogtreecommitdiff
path: root/libs/ardour/solo_safe_control.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-10-12 17:26:46 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-10-12 17:26:46 -0400
commitc104c9d4726f3ba1ecd352d13b88a57f2f964510 (patch)
tree61c1214d49f6efded889213e612d49fed5612927 /libs/ardour/solo_safe_control.cc
parent27cff39dc7c8692e309ac0f9c515a583b775fd7d (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.cc10
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