aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hid
diff options
context:
space:
mode:
authorVinicius Costa Gomes <vinicius.gomes@openbossa.org>2012-07-14 18:59:25 -0300
committerColin Cross <ccross@android.com>2012-08-16 12:44:30 -0700
commitd4bad8b2ea1c76b0c5ea55fbbf04e2115f560c22 (patch)
tree1eddda84b5d1cf91a1e14e19ebdde318229fa61f /drivers/hid
parentdb5889812ad156019303e50e3fa73773620f79d4 (diff)
downloadkernel_samsung_tuna-d4bad8b2ea1c76b0c5ea55fbbf04e2115f560c22.zip
kernel_samsung_tuna-d4bad8b2ea1c76b0c5ea55fbbf04e2115f560c22.tar.gz
kernel_samsung_tuna-d4bad8b2ea1c76b0c5ea55fbbf04e2115f560c22.tar.bz2
HID: uhid: Fix sending events with invalid data
This was detected because events with invalid types were arriving to userspace. The code before this patch would only work for the first event in the queue (when uhid->tail is 0). Signed-off-by: Vinicius Costa Gomes <vinicius.gomes@openbossa.org> Reviewed-by: David Herrmann <dh.herrmann@googlemail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/hid')
-rw-r--r--drivers/hid/uhid.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/hid/uhid.c b/drivers/hid/uhid.c
index 119b7e6..714cd8c 100644
--- a/drivers/hid/uhid.c
+++ b/drivers/hid/uhid.c
@@ -465,7 +465,7 @@ try_again:
goto try_again;
} else {
len = min(count, sizeof(**uhid->outq));
- if (copy_to_user(buffer, &uhid->outq[uhid->tail], len)) {
+ if (copy_to_user(buffer, uhid->outq[uhid->tail], len)) {
ret = -EFAULT;
} else {
kfree(uhid->outq[uhid->tail]);