Fixed bug in hiddata.*
authorPavel A <pavel_a@aaa>
Sun, 29 Mar 2015 21:03:51 +0000 (00:03 +0300)
committerPavel A <pavel_a@aaa>
Sun, 29 Mar 2015 21:03:51 +0000 (00:03 +0300)
commandline/hiddata_libusb01.c
commandline/hiddata_mswin.c
commandline/hiddata_osx.c
commandline/usbrelay-cmd.c

index b21aa80042eefcf313875ed1e2edc486ebdb2672..537374c933fae8c1369b28a6707840fd479c62fd 100644 (file)
@@ -203,12 +203,16 @@ int usbhidStrerror_r( int err, char *buf, int len)
     const char *s;
     switch (err) {
         case USBHID_ERR_ACCESS:      s = "Access to device denied";
+            break;
         case USBHID_ERR_NOTFOUND:    s = "The specified device was not found";
+            break;
         case USBHID_ERR_IO:          s = "Communication error with device";
+            break;
         case USBHID_ERR_IO_HID:      s = "HID I/O error with device";
+            break;
         default:
             s = "";
     }
-  
+
     return snprintf(buf, len, "%s", s);
 }
index d556f8b49e7c9de3408751ae2b7bf647e4aaba3f..ebcadfb0ccd6430285adae6463173b8f90227c0b 100644 (file)
@@ -30,7 +30,9 @@
 #ifdef _MSC_VER
 #pragma comment(lib, "setupapi")
 #pragma comment(lib, "hid")
+#if _MSC_VER < 1900 /* before VS2015 */
 #define snprintf   _snprintf
+#endif /* VS2015 */
 #else /* GCC, Mingw... */
 #endif /*_MSC_VER*/
 
@@ -172,7 +174,7 @@ int usbhidSetReport(USBDEVHANDLE usbh, char *buffer, int len)
 int usbhidGetReport(USBDEVHANDLE usbh, int reportNumber, char *buffer, int *len)
 {
     BOOLEAN rval = 0;
-    buffer[0] = reportNumber;
+    buffer[0] = (char)reportNumber;
     rval = HidD_GetFeature((HANDLE)usbh, buffer, *len);
     return rval == 0 ? USBHID_ERR_IO_HID : 0;
 }
@@ -183,12 +185,16 @@ int usbhidStrerror_r( int err, char *buf, int len)
     const char *s;
     switch (err) {
         case USBHID_ERR_ACCESS:      s = "Access to device denied";
+            break;
         case USBHID_ERR_NOTFOUND:    s = "The specified device was not found";
+            break;
         case USBHID_ERR_IO:          s = "Communication error with device";
+            break;
         case USBHID_ERR_IO_HID:      s = "HID I/O error with device";
+            break;
         default:
             s = "";
     }
-  
+
     return snprintf(buf, len, "%s", s);
 }
index 803961b5974599b6e38a4c5869b0b148a3563fd9..67e5adc4dc8a3847a47db1f0b1619896e0761739 100644 (file)
@@ -257,12 +257,16 @@ int usbhidStrerror_r( int err, char *buf, int len)
     const char *s;
     switch (err) {
         case USBHID_ERR_ACCESS:      s = "Access to device denied";
+            break;
         case USBHID_ERR_NOTFOUND:    s = "The specified device was not found";
+            break;
         case USBHID_ERR_IO:          s = "Communication error with device";
+            break;
         case USBHID_ERR_IO_HID:      s = "HID I/O error with device";
+            break;
         default:
             s = "";
     }
-  
+
     return snprintf(buf, len, "%s", s);
 }
index 421997bc01bf69d01bb291c2fdd45171ec4f48a8..3d983987e0b27008a1553f98495543a31f9440db 100644 (file)
@@ -81,6 +81,8 @@ static int enumFunc(USBDEVHANDLE dev, void *context)
     int num = 0;
     int i;
 
+       (context); // ~ unreferenced warning
+
     err = usbhidGetVendorString(dev, buffer, sizeof(buffer));
     if ( err || 0 != strcmp( buffer, vendorName) )
     {
@@ -94,7 +96,7 @@ static int enumFunc(USBDEVHANDLE dev, void *context)
     }
 
     i = (int)strlen(buffer);
-    if ( i != strlen(productName) + 1 )
+    if ( i != (int)strlen(productName) + 1 )
     {
         goto next;
     }