From bf86549bfca97d05f95440dc52e04438d4fea88e Mon Sep 17 00:00:00 2001 From: Michael Poole Date: Mon, 5 Jul 2010 10:50:09 -0400 Subject: [PATCH] --- yaml --- r: 204390 b: refs/heads/master c: 7d876c05fa6cf82f0274f27276d981ed325697a5 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/hid/hid-magicmouse.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index ecc5087be3fd..3bb1ed9d824c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e3612e8669b8c15278058f8dd52e3dc6e7d26710 +refs/heads/master: 7d876c05fa6cf82f0274f27276d981ed325697a5 diff --git a/trunk/drivers/hid/hid-magicmouse.c b/trunk/drivers/hid/hid-magicmouse.c index ee7878785955..319b0e57ee41 100644 --- a/trunk/drivers/hid/hid-magicmouse.c +++ b/trunk/drivers/hid/hid-magicmouse.c @@ -285,8 +285,8 @@ static int magicmouse_raw_event(struct hid_device *hdev, * to have the current touch information before * generating a click event. */ - x = (signed char)data[1]; - y = (signed char)data[2]; + x = (int)(((data[3] & 0x0c) << 28) | (data[1] << 22)) >> 22; + y = (int)(((data[3] & 0x30) << 26) | (data[2] << 22)) >> 22; clicks = data[3]; break; case 0x20: /* Theoretically battery status (0-100), but I have