From d7e23d71f8621faa3b051efff9dd46671b2d4eb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Thu, 2 May 2019 17:37:43 +0200 Subject: [PATCH] IOS/VEN: Return -4 when no transfer was cancelled Simple accuracy fix. --- Source/Core/Core/IOS/USB/USB_VEN/VEN.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Source/Core/Core/IOS/USB/USB_VEN/VEN.cpp b/Source/Core/Core/IOS/USB/USB_VEN/VEN.cpp index 4bb28968e3..e969417839 100644 --- a/Source/Core/Core/IOS/USB/USB_VEN/VEN.cpp +++ b/Source/Core/Core/IOS/USB/USB_VEN/VEN.cpp @@ -105,7 +105,9 @@ s32 USB_VEN::SubmitTransfer(USB::Device& device, const IOCtlVRequest& ioctlv) IPCCommandResult USB_VEN::CancelEndpoint(USBV5Device& device, const IOCtlRequest& request) { const u8 endpoint = static_cast(Memory::Read_U32(request.buffer_in + 8)); - GetDeviceById(device.host_id)->CancelTransfer(endpoint); + // IPC_EINVAL (-4) is returned when no transfer was cancelled. + if (GetDeviceById(device.host_id)->CancelTransfer(endpoint) < 0) + return GetDefaultReply(IPC_EINVAL); return GetDefaultReply(IPC_SUCCESS); }