Fix compilation with SDL2. (based on a patch from matthewharveys)

Fixes issue 5971.

Conflicts:
	Source/Core/InputCommon/Src/ControllerInterface/SDL/SDL.cpp
This commit is contained in:
Jordan Woyak 2013-02-05 21:07:09 -06:00 committed by Ryan Houdek
parent e556f47db0
commit 46f94203b7
1 changed files with 11 additions and 2 deletions

View File

@ -17,6 +17,15 @@ namespace ciface
{ {
namespace SDL namespace SDL
{ {
std::string GetJoystickName(int index)
{
#if SDL_VERSION_ATLEAST(2, 0, 0)
return SDL_JoystickNameForIndex(index);
#else
return SDL_JoystickName(index);
#endif
}
void Init( std::vector<ControllerInterface::Device*>& devices ) void Init( std::vector<ControllerInterface::Device*>& devices )
{ {
@ -32,7 +41,7 @@ void Init( std::vector<ControllerInterface::Device*>& devices )
SDL_Joystick* dev = SDL_JoystickOpen(i); SDL_Joystick* dev = SDL_JoystickOpen(i);
if (dev) if (dev)
{ {
Joystick* js = new Joystick(dev, i, name_counts[SDL_JoystickName(i)]++); Joystick* js = new Joystick(dev, i, name_counts[GetJoystickName(i)]++);
// only add if it has some inputs/outputs // only add if it has some inputs/outputs
if (js->Inputs().size() || js->Outputs().size()) if (js->Inputs().size() || js->Outputs().size())
devices.push_back( js ); devices.push_back( js );
@ -325,7 +334,7 @@ bool Joystick::UpdateOutput()
std::string Joystick::GetName() const std::string Joystick::GetName() const
{ {
return StripSpaces(SDL_JoystickName(m_sdl_index)); return StripSpaces(GetJoystickName(m_sdl_index));
} }
std::string Joystick::GetSource() const std::string Joystick::GetSource() const