Use SDL_GetStringBoolean() to parse the hint value
diff --git a/src/joystick/SDL_joystick.c b/src/joystick/SDL_joystick.c
index 78ac096..8915527 100644
--- a/src/joystick/SDL_joystick.c
+++ b/src/joystick/SDL_joystick.c
@@ -216,7 +216,7 @@ SDL_SetJoystickIDForPlayerIndex(int player_index, SDL_JoystickID instance_id)
static void SDLCALL
SDL_JoystickAllowBackgroundEventsChanged(void *userdata, const char *name, const char *oldValue, const char *hint)
{
- if (hint && *hint == '1') {
+ if (SDL_GetStringBoolean(hint, SDL_FALSE)) {
SDL_joystick_allows_background_events = SDL_TRUE;
} else {
SDL_joystick_allows_background_events = SDL_FALSE;