summaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/accel-classic.hpp20
1 files changed, 14 insertions, 6 deletions
diff --git a/common/accel-classic.hpp b/common/accel-classic.hpp
index 2ca1233..435d42f 100644
--- a/common/accel-classic.hpp
+++ b/common/accel-classic.hpp
@@ -116,13 +116,21 @@ namespace rawaccel {
if (args.cap.y > 0) {
cap.y = args.cap.y - 1;
- if (cap.y < 0) {
- cap.y = -cap.y;
- sign = -sign;
+ if (cap.y == 0) {
+ cap.x = 0;
+ }
+ else {
+ if (cap.y < 0) {
+ cap.y = -cap.y;
+ sign = -sign;
+ }
+
+ cap.x = gain_inverse(cap.y,
+ args.acceleration,
+ args.exponent_classic,
+ args.input_offset);
+ constant = (base_fn(cap.x, accel_raised, args) - cap.y) * cap.x;
}
-
- cap.x = gain_inverse(cap.y, args.acceleration, args.exponent_classic, args.input_offset);
- constant = (base_fn(cap.x, accel_raised, args) - cap.y) * cap.x;
}
break;
}