From: Felix Fietkau Date: Sat, 23 Jul 2016 08:29:55 +0000 (+0200) Subject: ledtrig-usbdev: fix duplicate match detection X-Git-Tag: v17.01.0-rc1~1957 X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=8fb89f7e73f29fb8bc94430ef024c19807a0c1d3;p=openwrt%2Fstaging%2Fchunkeey.git ledtrig-usbdev: fix duplicate match detection Signed-off-by: Felix Fietkau --- diff --git a/target/linux/generic/files/drivers/leds/ledtrig-usbdev.c b/target/linux/generic/files/drivers/leds/ledtrig-usbdev.c index effcae6f9e..2524bce93b 100644 --- a/target/linux/generic/files/drivers/leds/ledtrig-usbdev.c +++ b/target/linux/generic/files/drivers/leds/ledtrig-usbdev.c @@ -92,13 +92,14 @@ static int usbdev_trig_find_usb_dev(struct usb_device *usb_dev, void *data) { struct usbdev_trig_match *match = data; + if (strcmp(dev_name(&usb_dev->dev), match->device_name) != 0) + return 0; + if (WARN_ON(match->usb_dev)) return 0; - if (!strcmp(dev_name(&usb_dev->dev), match->device_name)) { - dev_dbg(&usb_dev->dev, "matched this device!\n"); - match->usb_dev = usb_get_dev(usb_dev); - } + dev_dbg(&usb_dev->dev, "matched this device!\n"); + match->usb_dev = usb_get_dev(usb_dev); return 0; }