diff options
| author | Jordan Woyak <jordan.woyak@gmail.com> | 2020-07-09 17:17:44 -0500 |
|---|---|---|
| committer | Jordan Woyak <jordan.woyak@gmail.com> | 2020-07-09 17:17:44 -0500 |
| commit | b350d3cca3c9cdf922d141d75ce259b63564e24e (patch) | |
| tree | 859152e672e27ac62668cc15537adcb36fbf0510 /Source/Core/InputCommon/GCAdapter.cpp | |
| parent | 5281efe2686f947195f7044b56eca00c7b7527a1 (diff) | |
InputCommon/GCAdapter: Unbreak Mayflash GCAdapters by allowing libusb_control_transfer call to fail.
Diffstat (limited to 'Source/Core/InputCommon/GCAdapter.cpp')
| -rw-r--r-- | Source/Core/InputCommon/GCAdapter.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Source/Core/InputCommon/GCAdapter.cpp b/Source/Core/InputCommon/GCAdapter.cpp index 3b8e823b24..ab9618efdf 100644 --- a/Source/Core/InputCommon/GCAdapter.cpp +++ b/Source/Core/InputCommon/GCAdapter.cpp @@ -303,9 +303,11 @@ static bool CheckDeviceAccess(libusb_device* device) ERROR_LOG(SERIALINTERFACE, "libusb_detach_kernel_driver failed with error: %d", ret); } - ret = libusb_control_transfer(s_handle, 0x21, 11, 0x0001, 0, nullptr, 0, 10000); - if (ret < 0) - ERROR_LOG(SERIALINTERFACE, "libusb_control_transfer failed with error: %d", ret); + // This call makes Nyko-brand (and perhaps other) adapters work. + // However it returns LIBUSB_ERROR_PIPE with Mayflash adapters. + const int transfer = libusb_control_transfer(s_handle, 0x21, 11, 0x0001, 0, nullptr, 0, 1000); + if (transfer < 0) + WARN_LOG(SERIALINTERFACE, "libusb_control_transfer failed with error: %d", transfer); // this split is needed so that we don't avoid claiming the interface when // detaching the kernel driver is successful |
