diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2016-09-16 17:31:19 +0200 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2016-09-16 17:53:40 +0200 |
commit | a781170550b4354e0f5551e0b20560d84e4108ce (patch) | |
tree | 2d845974432698cfcef21c87b3f5cef5ec1ecf60 /proto-vjoystick | |
parent | 6200fa9bb156ad02e7c6055c8dbd92f8c9a10759 (diff) |
proto/vjoystick: unbreak
Nice braino.
Diffstat (limited to 'proto-vjoystick')
-rw-r--r-- | proto-vjoystick/vjoystick.cpp | 28 |
1 files changed, 9 insertions, 19 deletions
diff --git a/proto-vjoystick/vjoystick.cpp b/proto-vjoystick/vjoystick.cpp index 5a780222..d05c54c5 100644 --- a/proto-vjoystick/vjoystick.cpp +++ b/proto-vjoystick/vjoystick.cpp @@ -36,29 +36,19 @@ constexpr double handle::val_minmax[6]; void handle::init() { -#if 0 - bool ret = true; - for (unsigned i = 0; i < axis_count; i++) { - ret &= GetVJDAxisExist(OPENTRACK_VJOYSTICK_ID, axis_ids[i]); - if (!ret) { qDebug() << "axis" << i << "doesn't exist"; break; } - ret &= GetVJDAxisMin(OPENTRACK_VJOYSTICK_ID, axis_ids[i], &axis_min[i]); - if (!ret) { qDebug() << "axis" << i << "can't get min value"; break; }; - ret &= GetVJDAxisMax(OPENTRACK_VJOYSTICK_ID, axis_ids[i], &axis_max[i]); - if (!ret) { qDebug() << "axis" << i << "can't get max value"; break; }; - } - - if (!ret) - { - (void) RelinquishVJD(OPENTRACK_VJOYSTICK_ID); - joy_state = state_fail; + if (!GetVJDAxisExist(OPENTRACK_VJOYSTICK_ID, axis_ids[i])) + { + // avoid floating point division by zero + axis_min[i] = 0; + axis_max[i] = 1; + continue; + } + GetVJDAxisMin(OPENTRACK_VJOYSTICK_ID, axis_ids[i], &axis_min[i]); + GetVJDAxisMax(OPENTRACK_VJOYSTICK_ID, axis_ids[i], &axis_max[i]); } - else - (void) ResetVJD(OPENTRACK_VJOYSTICK_ID); -#else (void) ResetVJD(OPENTRACK_VJOYSTICK_ID); -#endif } handle::handle() |