瀏覽代碼

Don't consider USB devices which have already been skipped

Fixes https://github.com/libsdl-org/SDL/issues/14367

(cherry picked from commit 6570d9e23fb2e7abbfb3857c02ed8c766c6d5b4d)
Sam Lantinga 4 月之前
父節點
當前提交
3ff58bf062
共有 1 個文件被更改,包括 5 次插入0 次删除
  1. 5 0
      src/hidapi/SDL_hidapi.c

+ 5 - 0
src/hidapi/SDL_hidapi.c

@@ -1337,6 +1337,11 @@ struct SDL_hid_device_info *SDL_hid_enumerate(unsigned short vendor_id, unsigned
 #endif
 #endif
 #ifdef HAVE_LIBUSB
 #ifdef HAVE_LIBUSB
             for (usb_dev = usb_devs; usb_dev; usb_dev = usb_dev->next) {
             for (usb_dev = usb_devs; usb_dev; usb_dev = usb_dev->next) {
+                if (use_libusb_whitelist) {
+                    if (!IsInWhitelist(usb_dev->vendor_id, usb_dev->product_id)) {
+                        continue;
+                    }
+                }
                 if (raw_dev->vendor_id == usb_dev->vendor_id &&
                 if (raw_dev->vendor_id == usb_dev->vendor_id &&
                     raw_dev->product_id == usb_dev->product_id &&
                     raw_dev->product_id == usb_dev->product_id &&
                     (raw_dev->interface_number < 0 || raw_dev->interface_number == usb_dev->interface_number)) {
                     (raw_dev->interface_number < 0 || raw_dev->interface_number == usb_dev->interface_number)) {