From 76b0de3566d01d397fcb0a7c9f35b0bace12ca86 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Thu, 16 Sep 2021 01:28:09 -0500 Subject: [PATCH] Triggers should be unsigned types --- src/input/evdev.c | 4 ++-- src/input/sdl.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/input/evdev.c b/src/input/evdev.c index 7c8d05b..d9dcbbd 100644 --- a/src/input/evdev.c +++ b/src/input/evdev.c @@ -73,7 +73,7 @@ struct input_device { short controllerId; int haptic_effect_id; int buttonFlags; - char leftTrigger, rightTrigger; + unsigned char leftTrigger, rightTrigger; short leftStickX, leftStickY; short rightStickX, rightStickY; bool gamepadModified; @@ -189,7 +189,7 @@ static short evdev_convert_value(struct input_event *ev, struct input_device *de return (long long)(ev->value - (ev->value>parms->avg?parms->flat*2:0) - parms->min) * (SHRT_MAX-SHRT_MIN) / (parms->max-parms->min-parms->flat*2) + SHRT_MIN; } -static char evdev_convert_value_byte(struct input_event *ev, struct input_device *dev, struct input_abs_parms *parms, char halfaxis) { +static unsigned char evdev_convert_value_byte(struct input_event *ev, struct input_device *dev, struct input_abs_parms *parms, char halfaxis) { if (parms->max == 0 && parms->min == 0) { fprintf(stderr, "Axis not found: %d\n", ev->code); return 0; diff --git a/src/input/sdl.c b/src/input/sdl.c index 33dcdf1..9bf1e12 100644 --- a/src/input/sdl.c +++ b/src/input/sdl.c @@ -28,7 +28,7 @@ #define FULLSCREEN_KEY SDLK_f typedef struct _GAMEPAD_STATE { - char leftTrigger, rightTrigger; + unsigned char leftTrigger, rightTrigger; short leftStickX, leftStickY; short rightStickX, rightStickY; int buttons;