Commit 31a57c05dc23464c9a87308b5ecae5541530981f

Sam Lantinga 2023-02-10T16:46:21

Fixed the share button on the ThrustMaster eSwap PRO Controller Xbox (cherry picked from commit e4face7c1d41698067b9afdd8c7f0a8f76774da2)

diff --git a/src/joystick/hidapi/SDL_hidapi_xboxone.c b/src/joystick/hidapi/SDL_hidapi_xboxone.c
index 3909898..fc8d675 100644
--- a/src/joystick/hidapi/SDL_hidapi_xboxone.c
+++ b/src/joystick/hidapi/SDL_hidapi_xboxone.c
@@ -696,7 +696,7 @@ static void HIDAPI_DriverXboxOne_HandleStatePacket(SDL_Joystick *joystick, SDL_D
          * Xbox Series X firmware version 5.1, report is 44 bytes, share button is in byte 18
          * Xbox Series X firmware version 5.5, report is 48 bytes, share button is in byte 22
          * Victrix Gambit Tournament Controller, report is 50 bytes, share button is in byte 32
-         * ThrustMaster eSwap PRO Controller Xbox, report is 64 bytes, share button is in byte 46
+         * ThrustMaster eSwap PRO Controller Xbox, report is 60 bytes, share button is in byte 46
          */
         if (size < 48) {
             if (ctx->last_state[18] != data[18]) {
@@ -710,7 +710,7 @@ static void HIDAPI_DriverXboxOne_HandleStatePacket(SDL_Joystick *joystick, SDL_D
             if (ctx->last_state[32] != data[32]) {
                 SDL_PrivateJoystickButton(joystick, SDL_CONTROLLER_BUTTON_MISC1, (data[32] & 0x01) ? SDL_PRESSED : SDL_RELEASED);
             }
-        } else if (size == 64) {
+        } else if (size == 60) {
             if (ctx->last_state[46] != data[46]) {
                 SDL_PrivateJoystickButton(joystick, SDL_CONTROLLER_BUTTON_MISC1, (data[46] & 0x01) ? SDL_PRESSED : SDL_RELEASED);
             }