Fix device counting in HapticMouse and JoystickOpen routines. 0 is the first item in the list not the last

This commit is contained in:
Edward Rudd 2014-02-06 09:35:44 -05:00
parent f3e6a0a71b
commit a09548eb00
3 changed files with 10 additions and 10 deletions

View File

@ -199,7 +199,7 @@ HapticByDevIndex(int device_index)
while (device_index > 0) { while (device_index > 0) {
SDL_assert(item != NULL); SDL_assert(item != NULL);
device_index--; --device_index;
item = item->next; item = item->next;
} }
@ -571,7 +571,7 @@ SDL_SYS_HapticOpen(SDL_Haptic * haptic)
int int
SDL_SYS_HapticMouse(void) SDL_SYS_HapticMouse(void)
{ {
int device_index = numhaptics-1; int device_index = 0;
SDL_hapticlist_item *item; SDL_hapticlist_item *item;
for (item = SDL_hapticlist; item; item = item->next) { for (item = SDL_hapticlist; item; item = item->next) {
@ -579,7 +579,7 @@ SDL_SYS_HapticMouse(void)
(item->usage == kHIDUsage_GD_Mouse)) { (item->usage == kHIDUsage_GD_Mouse)) {
return device_index; return device_index;
} }
device_index--; ++device_index;
} }
return -1; return -1;

View File

@ -202,7 +202,7 @@ HapticByDevIndex(int device_index)
while (device_index > 0) { while (device_index > 0) {
SDL_assert(item != NULL); SDL_assert(item != NULL);
device_index--; --device_index;
item = item->next; item = item->next;
} }

View File

@ -442,7 +442,7 @@ HapticByDevIndex(int device_index)
while (device_index > 0) { while (device_index > 0) {
SDL_assert(item != NULL); SDL_assert(item != NULL);
device_index--; --device_index;
item = item->next; item = item->next;
} }
@ -784,7 +784,7 @@ int
SDL_SYS_HapticMouse(void) SDL_SYS_HapticMouse(void)
{ {
SDL_hapticlist_item *item; SDL_hapticlist_item *item;
int index = numhaptics-1; int index = 0;
/* Grab the first mouse haptic device we find. */ /* Grab the first mouse haptic device we find. */
for (item = SDL_hapticlist; item != NULL; item = item->next) { for (item = SDL_hapticlist; item != NULL; item = item->next) {
@ -792,7 +792,7 @@ SDL_SYS_HapticMouse(void)
if (item->capabilities.dwDevType == DI8DEVCLASS_POINTER ) { if (item->capabilities.dwDevType == DI8DEVCLASS_POINTER ) {
return index; return index;
} }
index--; ++index;
} }
return -1; return -1;
@ -855,7 +855,7 @@ int
SDL_SYS_HapticOpenFromJoystick(SDL_Haptic * haptic, SDL_Joystick * joystick) SDL_SYS_HapticOpenFromJoystick(SDL_Haptic * haptic, SDL_Joystick * joystick)
{ {
SDL_hapticlist_item *item; SDL_hapticlist_item *item;
int index = numhaptics-1; int index = 0;
/* Since it comes from a joystick we have to try to match it with a haptic device on our haptic list. */ /* Since it comes from a joystick we have to try to match it with a haptic device on our haptic list. */
if (joystick->hwdata->bXInputDevice) { if (joystick->hwdata->bXInputDevice) {
@ -866,7 +866,7 @@ SDL_SYS_HapticOpenFromJoystick(SDL_Haptic * haptic, SDL_Joystick * joystick)
haptic->index = index; haptic->index = index;
return SDL_SYS_HapticOpenFromXInput(haptic, userid); return SDL_SYS_HapticOpenFromXInput(haptic, userid);
} }
index--; ++index;
} }
} else { } else {
HRESULT idret; HRESULT idret;
@ -883,7 +883,7 @@ SDL_SYS_HapticOpenFromJoystick(SDL_Haptic * haptic, SDL_Joystick * joystick)
haptic->index = index; haptic->index = index;
return SDL_SYS_HapticOpenFromDevice8(haptic, joystick->hwdata->InputDevice, SDL_TRUE); return SDL_SYS_HapticOpenFromDevice8(haptic, joystick->hwdata->InputDevice, SDL_TRUE);
} }
index--; ++index;
} }
} }