Просмотр исходного кода

Fixed crash if vendor or product strings are empty

Sam Lantinga 3 лет назад
Родитель
Сommit
0e62926ec5
1 измененных файлов с 6 добавлено и 2 удалено
  1. 6 2
      src/hidapi/libusb/hid.c

+ 6 - 2
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)