Fixed access of command line arguments on Android in two test programs.

Philipp Wiesemann 2013-12-25 00:11:28 +01:00
parent 36cbd50685
commit 65f0142fac
2 changed files with 14 additions and 8 deletions

View File

@ -386,15 +386,18 @@ main(int argc, char *argv[])
SDL_bool reportederror = SDL_FALSE; SDL_bool reportederror = SDL_FALSE;
SDL_bool keepGoing = SDL_TRUE; SDL_bool keepGoing = SDL_TRUE;
SDL_Event event; SDL_Event event;
int device;
#ifdef ANDROID #ifdef ANDROID
joystick = SDL_JoystickOpen(0); device = 0;
#else #else
joystick = SDL_JoystickOpen(atoi(argv[1])); device = atoi(argv[1]);
#endif #endif
joystick = SDL_JoystickOpen(device);
while ( keepGoing ) { while ( keepGoing ) {
if (joystick == NULL) { if (joystick == NULL) {
if ( !reportederror ) { if ( !reportederror ) {
SDL_Log("Couldn't open joystick %d: %s\n", atoi(argv[1]), SDL_GetError()); SDL_Log("Couldn't open joystick %d: %s\n", device, SDL_GetError());
keepGoing = SDL_FALSE; keepGoing = SDL_FALSE;
reportederror = SDL_TRUE; reportederror = SDL_TRUE;
} }
@ -414,7 +417,7 @@ main(int argc, char *argv[])
|| (event.type == SDL_MOUSEBUTTONDOWN)) { || (event.type == SDL_MOUSEBUTTONDOWN)) {
keepGoing = SDL_FALSE; keepGoing = SDL_FALSE;
} else if (event.type == SDL_JOYDEVICEADDED) { } else if (event.type == SDL_JOYDEVICEADDED) {
joystick = SDL_JoystickOpen(atoi(argv[1])); joystick = SDL_JoystickOpen(device);
break; break;
} }
} }

View File

@ -251,15 +251,18 @@ main(int argc, char *argv[])
SDL_bool reportederror = SDL_FALSE; SDL_bool reportederror = SDL_FALSE;
SDL_bool keepGoing = SDL_TRUE; SDL_bool keepGoing = SDL_TRUE;
SDL_Event event; SDL_Event event;
int device;
#ifdef ANDROID #ifdef ANDROID
joystick = SDL_JoystickOpen(0); device = 0;
#else #else
joystick = SDL_JoystickOpen(atoi(argv[1])); device = atoi(argv[1]);
#endif #endif
joystick = SDL_JoystickOpen(device);
while ( keepGoing ) { while ( keepGoing ) {
if (joystick == NULL) { if (joystick == NULL) {
if ( !reportederror ) { if ( !reportederror ) {
SDL_Log("Couldn't open joystick %d: %s\n", atoi(argv[1]), SDL_GetError()); SDL_Log("Couldn't open joystick %d: %s\n", device, SDL_GetError());
keepGoing = SDL_FALSE; keepGoing = SDL_FALSE;
reportederror = SDL_TRUE; reportederror = SDL_TRUE;
} }
@ -279,7 +282,7 @@ main(int argc, char *argv[])
|| (event.type == SDL_MOUSEBUTTONDOWN)) { || (event.type == SDL_MOUSEBUTTONDOWN)) {
keepGoing = SDL_FALSE; keepGoing = SDL_FALSE;
} else if (event.type == SDL_JOYDEVICEADDED) { } else if (event.type == SDL_JOYDEVICEADDED) {
joystick = SDL_JoystickOpen(atoi(argv[1])); joystick = SDL_JoystickOpen(device);
break; break;
} }
} }