summaryrefslogtreecommitdiff
path: root/libs/ardour/solo_isolate_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_isolate_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_isolate_control.cc')
-rw-r--r--libs/ardour/solo_isolate_control.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/libs/ardour/solo_isolate_control.cc b/libs/ardour/solo_isolate_control.cc
index 7964f7eb66..ebd046fba6 100644
--- a/libs/ardour/solo_isolate_control.cc
+++ b/libs/ardour/solo_isolate_control.cc
@@ -88,11 +88,11 @@ SoloIsolateControl::mod_solo_isolated_by_upstream (int32_t delta)
}
}
-void
+bool
SoloIsolateControl::actually_set_value (double val, PBD::Controllable::GroupControlDisposition gcd)
{
if (!_soloable.can_solo()) {
- return;
+ return false;
}
set_solo_isolated (val, gcd);
@@ -101,8 +101,12 @@ SoloIsolateControl::actually_set_value (double val, PBD::Controllable::GroupCont
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;
}
void