summaryrefslogtreecommitdiffstats
path: root/drivers/usb/wusbcore
diff options
context:
space:
mode:
authorAnderson Lizardo <anderson.lizardo@indt.org.br>2008-09-17 16:34:31 +0100
committerDavid Vrabel <dv02@dv02pc01.europe.root.pri>2008-09-17 16:54:32 +0100
commitf51c23baedf191734364d3aae034d8c9c4cd8cf8 (patch)
tree1a6f39a68f02dc4738290ae7a5a08717e9bbc36f /drivers/usb/wusbcore
parentd09318b8ab2eabb65b6fa0dc04dab1822846eabb (diff)
downloadlinux-f51c23baedf191734364d3aae034d8c9c4cd8cf8.tar.bz2
wusb: fix error path for wusb_set_dev_addr()
Error path for wusb_set_dev_addr() was handled incorrectly. Fix it by considering error only when return value is negative. Signed-off-by: Anderson Lizardo <anderson.lizardo@indt.org.br> Signed-off-by: David Vrabel <david.vrabel@csr.com>
Diffstat (limited to 'drivers/usb/wusbcore')
-rw-r--r--drivers/usb/wusbcore/devconnect.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/usb/wusbcore/devconnect.c b/drivers/usb/wusbcore/devconnect.c
index f05f9b4d7751..30d7020e1c50 100644
--- a/drivers/usb/wusbcore/devconnect.c
+++ b/drivers/usb/wusbcore/devconnect.c
@@ -239,8 +239,8 @@ static struct wusb_dev *wusbhc_cack_add(struct wusbhc *wusbhc,
"port %u\n", dev_addr, port_idx);
result = wusb_set_dev_addr(wusbhc, wusb_dev, dev_addr);
- if (result)
- return NULL;
+ if (result < 0)
+ return NULL;
}
wusb_dev->entry_ts = jiffies;
list_add_tail(&wusb_dev->cack_node, &wusbhc->cack_list);
@@ -1301,7 +1301,7 @@ int wusb_set_dev_addr(struct wusbhc *wusbhc, struct wusb_dev *wusb_dev, u8 addr)
wusb_dev->addr = addr;
result = wusbhc->dev_info_set(wusbhc, wusb_dev);
- if (result)
+ if (result < 0)
dev_err(wusbhc->dev, "device %d: failed to set device "
"address\n", wusb_dev->port_idx);
else