This commit is contained in:
Yang sheng 2026-08-06 00:27:47 +03:00 • committed by GitHub
commit b39c46a6a9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -387,6 +387,7 @@ void _glfwTerminateJoysticksLinux(void)
GLFWbool _glfwPollJoystickLinux(_GLFWjoystick* js, int mode)
{
// Read all queued events (non-blocking)
GLFWbool event_valid = GLFW_FALSE;
for (;;)
{
struct input_event e;
@ -397,6 +398,8 @@ GLFWbool _glfwPollJoystickLinux(_GLFWjoystick* js, int mode)
// Reset the joystick slot if the device was disconnected
if (errno == ENODEV)
closeJoystick(js);
else if ((errno == EAGAIN) && (mode != _GLFW_POLL_PRESENCE))
return event_valid;
break;
}
@ -408,6 +411,7 @@ GLFWbool _glfwPollJoystickLinux(_GLFWjoystick* js, int mode)
else if (e.code == SYN_REPORT)
{
_glfw.linjs.dropped = GLFW_FALSE;
event_valid = GLFW_TRUE;
pollAbsState(js);
}
}