|
@@ -25,6 +25,7 @@
|
|
|
/* Handle rumble on a separate thread so it doesn't block the application */
|
|
|
|
|
|
#include "SDL_thread.h"
|
|
|
+#include "SDL_timer.h"
|
|
|
#include "SDL_hidapijoystick_c.h"
|
|
|
#include "SDL_hidapi_rumble.h"
|
|
|
#include "../../thread/SDL_systhread.h"
|
|
@@ -81,6 +82,9 @@ static int SDL_HIDAPI_RumbleThread(void *data)
|
|
|
SDL_UnlockMutex(request->device->dev_lock);
|
|
|
(void)SDL_AtomicDecRef(&request->device->rumble_pending);
|
|
|
SDL_free(request);
|
|
|
+
|
|
|
+ /* Make sure we're not starving report reads when there's lots of rumble */
|
|
|
+ SDL_Delay(10);
|
|
|
}
|
|
|
}
|
|
|
return 0;
|