aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hid/hid-cp2112.c
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2014-02-18 03:43:53 -0500
committerJiri Kosina <jkosina@suse.cz>2014-02-18 03:43:53 -0500
commit0438ee7080ac83a6a831c52bc4e8c29dc2306e95 (patch)
treebeaf36e342f8619bd4c56f8ab01dade59d0ad567 /drivers/hid/hid-cp2112.c
parenta47dc4d8cfd226b3ba0bc7daffd107e4b898a165 (diff)
HID: cp2112: fix incorrect error propagation in cp2112_xfer()
Both cp2112_read_req() and cp2112_write_req() are returning negative value in cases of error, but cp2112_xfer() is storing the return value into unsigned size_t-typed 'count'. Fix this by making 'count' signed type. Reported-by: fengguang.wu@intel.com Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid/hid-cp2112.c')
-rw-r--r--drivers/hid/hid-cp2112.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/hid/hid-cp2112.c b/drivers/hid/hid-cp2112.c
index 6d679f1840a7..1025982c7fd3 100644
--- a/drivers/hid/hid-cp2112.c
+++ b/drivers/hid/hid-cp2112.c
@@ -428,7 +428,7 @@ static int cp2112_xfer(struct i2c_adapter *adap, u16 addr,
428 struct hid_device *hdev = dev->hdev; 428 struct hid_device *hdev = dev->hdev;
429 u8 buf[64]; 429 u8 buf[64];
430 __be16 word; 430 __be16 word;
431 size_t count; 431 ssize_t count;
432 size_t read_length = 0; 432 size_t read_length = 0;
433 unsigned int retries; 433 unsigned int retries;
434 int ret; 434 int ret;