From b3d3f2b5dea96708f97d3bf937dd6e5352045eeb Mon Sep 17 00:00:00 2001
From: Carl Philipp Klemm <philipp@uvos.xyz>
Date: Tue, 7 Nov 2023 09:36:38 +0100
Subject: [PATCH] dont return USBSHM_ERROR_AGAIN on libusb error

---
 usbshm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/usbshm.c b/usbshm.c
index 94c37ba..5b609c7 100644
--- a/usbshm.c
+++ b/usbshm.c
@@ -106,7 +106,7 @@ int usbshm_init(struct usbshm* instance, void (*dataCallback)(uint8_t request, u
 	}
 	if(ret == 0)
 		objectCounter++;
-	return ret;
+	return ret < 0 ? USBSHM_ERROR_ERR : 0;
 }
 
 bool usbshm_ready(struct usbshm* instance)
@@ -289,5 +289,5 @@ int usbshm_readControlTransferSync(struct usbshm* instance, const uint8_t reques
 	int ret = libusb_control_transfer(instance->priv->handle, LIBUSB_REQUEST_TYPE_VENDOR | LIBUSB_RECIPIENT_DEVICE | LIBUSB_ENDPOINT_IN,
 									 request, wValue, wIndex, buffer, length, 2000);
 	pthread_mutex_unlock(libusbDataMutex);
-	return ret;
+	return ret < 0 ? USBSHM_ERROR_ERR : 0;
 }
-- 
GitLab