[Spice-devel] [spice-gtk v1 1/4] usb: use native libusb procedure for getting error name

Victor Toso victortoso at redhat.com
Tue May 21 09:05:49 UTC 2019


From: Yuri Benditovich <yuri.benditovich at daynix.com>

libusb has libusb_error_name procedure that returns name
for any error that libusb may return, so we do not need
to analyze error values by ourselves.

Signed-off-by: Yuri Benditovich <yuri.benditovich at daynix.com>
---
 src/usbutil.c | 32 +-------------------------------
 1 file changed, 1 insertion(+), 31 deletions(-)

diff --git a/src/usbutil.c b/src/usbutil.c
index e96ab11..4aa6ef7 100644
--- a/src/usbutil.c
+++ b/src/usbutil.c
@@ -61,37 +61,7 @@ static usb_vendor_info *usbids_vendor_info = NULL;
 G_GNUC_INTERNAL
 const char *spice_usbutil_libusb_strerror(enum libusb_error error_code)
 {
-    switch (error_code) {
-    case LIBUSB_SUCCESS:
-        return "Success";
-    case LIBUSB_ERROR_IO:
-        return "Input/output error";
-    case LIBUSB_ERROR_INVALID_PARAM:
-        return "Invalid parameter";
-    case LIBUSB_ERROR_ACCESS:
-        return "Access denied (insufficient permissions)";
-    case LIBUSB_ERROR_NO_DEVICE:
-        return "No such device (it may have been disconnected)";
-    case LIBUSB_ERROR_NOT_FOUND:
-        return "Entity not found";
-    case LIBUSB_ERROR_BUSY:
-        return "Resource busy";
-    case LIBUSB_ERROR_TIMEOUT:
-        return "Operation timed out";
-    case LIBUSB_ERROR_OVERFLOW:
-        return "Overflow";
-    case LIBUSB_ERROR_PIPE:
-        return "Pipe error";
-    case LIBUSB_ERROR_INTERRUPTED:
-        return "System call interrupted (perhaps due to signal)";
-    case LIBUSB_ERROR_NO_MEM:
-        return "Insufficient memory";
-    case LIBUSB_ERROR_NOT_SUPPORTED:
-        return "Operation not supported or unimplemented on this platform";
-    case LIBUSB_ERROR_OTHER:
-        return "Other error";
-    }
-    return "Unknown error";
+    return libusb_error_name(error_code);
 }
 
 #ifdef __linux__
-- 
2.20.1



More information about the Spice-devel mailing list