SDL: Added a FIXME to lock the joystick list and update the GameInput joystick support

From a7e425497b980de9dae0a9dc82d8885779d7dc7d Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Wed, 7 Aug 2024 06:48:10 -0700
Subject: [PATCH] Added a FIXME to lock the joystick list and update the
 GameInput joystick support

---
 src/joystick/gdk/SDL_gameinputjoystick.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/joystick/gdk/SDL_gameinputjoystick.c b/src/joystick/gdk/SDL_gameinputjoystick.c
index 7cceec9d03575..5ab44c4a49561 100644
--- a/src/joystick/gdk/SDL_gameinputjoystick.c
+++ b/src/joystick/gdk/SDL_gameinputjoystick.c
@@ -56,7 +56,7 @@ typedef struct joystick_hwdata
     GameInputCallbackToken guide_button_callback_token;
 } GAMEINPUT_InternalJoystickHwdata;
 
-
+// FIXME: We need a lock to protect the device list
 static GAMEINPUT_InternalList g_GameInputList = { NULL };
 static void *g_hGameInputDLL = NULL;
 static IGameInput *g_pGameInput = NULL;
@@ -103,6 +103,7 @@ static int GAMEINPUT_InternalAddOrFind(IGameInputDevice *pDevice)
         elem = g_GameInputList.devices[idx];
         if (elem && elem->device == pDevice) {
             /* we're already added */
+            elem->isDeleteRequested = SDL_FALSE;
             return 0;
         }
     }