summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/GCAdapter.cpp
diff options
context:
space:
mode:
authornyanpasu64 <nyanpasu64@tuta.io>2023-07-02 20:07:37 -0700
committernyanpasu64 <nyanpasu64@tuta.io>2023-07-05 20:38:22 -0700
commit5d0f1bd10b1af825a80ab78160fe7c9924e835e9 (patch)
treebc2d851842f9448c5edd709a8c31f697ea1ea8ae /Source/Core/InputCommon/GCAdapter.cpp
parentc893ccca58cb504b003b100880cc5074faf9e822 (diff)
Switch libusb_config_descriptor to RAII type
Diffstat (limited to 'Source/Core/InputCommon/GCAdapter.cpp')
-rw-r--r--Source/Core/InputCommon/GCAdapter.cpp11
1 files changed, 5 insertions, 6 deletions
diff --git a/Source/Core/InputCommon/GCAdapter.cpp b/Source/Core/InputCommon/GCAdapter.cpp
index bb1542988e..ec3c3a1fb3 100644
--- a/Source/Core/InputCommon/GCAdapter.cpp
+++ b/Source/Core/InputCommon/GCAdapter.cpp
@@ -625,8 +625,8 @@ static bool CheckDeviceAccess(libusb_device* device)
static void AddGCAdapter(libusb_device* device)
{
- libusb_config_descriptor* config = nullptr;
- if (const int error = libusb_get_config_descriptor(device, 0, &config); error != LIBUSB_SUCCESS)
+ auto [error, config] = LibusbUtils::MakeConfigDescriptor(device);
+ if (error != LIBUSB_SUCCESS)
{
WARN_LOG_FMT(CONTROLLERINTERFACE, "libusb_get_config_descriptor failed: {}",
LibusbUtils::ErrorWrap(error));
@@ -647,13 +647,12 @@ static void AddGCAdapter(libusb_device* device)
}
}
}
- libusb_free_config_descriptor(config);
+ config.reset();
int size = 0;
std::array<u8, CONTROLER_OUTPUT_INIT_PAYLOAD_SIZE> payload = {0x13};
- const int error =
- libusb_interrupt_transfer(s_handle, s_endpoint_out, payload.data(),
- CONTROLER_OUTPUT_INIT_PAYLOAD_SIZE, &size, USB_TIMEOUT_MS);
+ error = libusb_interrupt_transfer(s_handle, s_endpoint_out, payload.data(),
+ CONTROLER_OUTPUT_INIT_PAYLOAD_SIZE, &size, USB_TIMEOUT_MS);
if (error != LIBUSB_SUCCESS)
{
WARN_LOG_FMT(CONTROLLERINTERFACE, "AddGCAdapter: libusb_interrupt_transfer failed: {}",