Remove the HIDAPI device if we get a read error from it

This fixes detecting PS4 controller disconnect on Mac OS X, where there isn't any device removed notification
This commit is contained in:
Sam Lantinga 2018-08-15 19:53:26 -07:00
parent a7e38096ba
commit ae47f3aa91
6 changed files with 25 additions and 8 deletions

View file

@ -479,7 +479,7 @@ HIDAPI_DriverPS4_HandleStatePacket(SDL_Joystick *joystick, hid_device *dev, SDL_
SDL_memcpy(&ctx->last_state, packet, sizeof(ctx->last_state));
}
static void
static SDL_bool
HIDAPI_DriverPS4_Update(SDL_Joystick *joystick, hid_device *dev, void *context)
{
SDL_DriverPS4_Context *ctx = (SDL_DriverPS4_Context *)context;
@ -509,6 +509,8 @@ HIDAPI_DriverPS4_Update(SDL_Joystick *joystick, hid_device *dev, void *context)
HIDAPI_DriverPS4_Rumble(joystick, dev, context, 0, 0, 0);
}
}
return (size >= 0);
}
static void