diff --git a/src/modules/joystick/sdl/Joystick.cpp b/src/modules/joystick/sdl/Joystick.cpp index 8d1d011e4..cabf173e1 100644 --- a/src/modules/joystick/sdl/Joystick.cpp +++ b/src/modules/joystick/sdl/Joystick.cpp @@ -124,11 +124,13 @@ const char *Joystick::getName() const if (!isConnected()) return name.c_str(); - // Prefer SDL's GameController name, if possible. - if (isGamepad()) - return SDL_GameControllerName(controller); + // Prefer the Joystick name for consistency. + const char *joyname = SDL_JoystickName(joyhandle); - return SDL_JoystickName(joyhandle); + if (!joyname && isGamepad()) + joyname = SDL_GameControllerName(controller); + + return joyname; } int Joystick::getAxisCount() const