Commit 0e62926ec55e6bb20b09b6ea4695d23d0ac6e1d0

Sam Lantinga 2021-06-10T16:28:32

Fixed crash if vendor or product strings are empty

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
diff --git a/src/hidapi/libusb/hid.c b/src/hidapi/libusb/hid.c
index dfc9ecb..acbffab 100644
--- a/src/hidapi/libusb/hid.c
+++ b/src/hidapi/libusb/hid.c
@@ -733,8 +733,12 @@ struct hid_device_info  HID_API_EXPORT *hid_enumerate(unsigned short vendor_id, 
 								if (dev_vid && dev_pid) {
 									string_cache = usb_string_cache_find(&desc, handle);
 									if (string_cache) {
-										cur_dev->manufacturer_string = wcsdup(string_cache->vendor);
-										cur_dev->product_string = wcsdup(string_cache->product);
+										if (string_cache->vendor) {
+											cur_dev->manufacturer_string = wcsdup(string_cache->vendor);
+										}
+										if (string_cache->product) {
+											cur_dev->product_string = wcsdup(string_cache->product);
+										}
 									}
 								} else {
 									if (desc.iManufacturer > 0)