summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/ardour/slavable_automation_control.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/ardour/slavable_automation_control.cc b/libs/ardour/slavable_automation_control.cc
index c67cb64188..cd46194316 100644
--- a/libs/ardour/slavable_automation_control.cc
+++ b/libs/ardour/slavable_automation_control.cc
@@ -103,7 +103,12 @@ SlavableAutomationControl::actually_set_value (double value, PBD::Controllable::
if (!_masters.empty()) {
/* need to scale given value by current master's scaling */
- value /= get_masters_value_locked();
+ const double masters_value = get_masters_value_locked();
+ if (masters_value == 0.0) {
+ value = 0.0;
+ } else {
+ value /= masters_value;
+ }
}
}