diff --git a/Source/Core/InputCommon/GCAdapter.cpp b/Source/Core/InputCommon/GCAdapter.cpp index 21a1255fb0..cacb73bc79 100644 --- a/Source/Core/InputCommon/GCAdapter.cpp +++ b/Source/Core/InputCommon/GCAdapter.cpp @@ -211,6 +211,10 @@ static void ReadThreadFunc() ERROR_LOG_FMT(CONTROLLERINTERFACE, "Read: libusb_interrupt_transfer failed: {}", LibusbUtils::ErrorWrap(error)); } + if (error == LIBUSB_ERROR_IO) + { + break; + } ProcessInputPayload(input_buffer.data(), payload_size);