diff options
Diffstat (limited to 'src/server/internals/Controller.cpp')
-rw-r--r-- | src/server/internals/Controller.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/server/internals/Controller.cpp b/src/server/internals/Controller.cpp index 0366cbf0..36c735ce 100644 --- a/src/server/internals/Controller.cpp +++ b/src/server/internals/Controller.cpp @@ -157,8 +157,9 @@ ControllerNode::control(RunContext& context, uint8_t control_num, uint8_t val, F if (log_port_val > 0.0f) { // haaaaack, stupid negatives and logarithms Sample log_offset = 0; - if (min_port_val < 0) + if (min_port_val < 0) { log_offset = fabs(min_port_val); + } const Sample min = log(min_port_val + 1 + log_offset); const Sample max = log(max_port_val + 1 + log_offset); scaled_value = expf(nval * (max - min) + min) - 1 - log_offset; |