Input: alps - fix v4 button press recognition

Since the change to struct input_mt_pos some variables are now bitfields
instead of integers. Automatic conversion from integer to bitfield entry
destroys information, therefore enforce boolean interpretation instead.

Link: https://bugzilla.redhat.com/show_bug.cgi?id=1114768
Fixes: 02d04254a5 ("Input: alps - use struct input_mt_pos to track coordinates")
Signed-off-by: Andreas Bosch <linux@progandy.de>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
Andreas Bosch 2014-10-15 10:44:50 -07:00 committed by Dmitry Torokhov
parent 4af6600fd7
commit b0cfb794a3

View File

@ -835,8 +835,8 @@ static void alps_process_packet_v4(struct psmouse *psmouse)
f->fingers = alps_process_bitmap(priv, f); f->fingers = alps_process_bitmap(priv, f);
} }
f->left = packet[4] & 0x01; f->left = !!(packet[4] & 0x01);
f->right = packet[4] & 0x02; f->right = !!(packet[4] & 0x02);
f->st.x = ((packet[1] & 0x7f) << 4) | ((packet[3] & 0x30) >> 2) | f->st.x = ((packet[1] & 0x7f) << 4) | ((packet[3] & 0x30) >> 2) |
((packet[0] & 0x30) >> 4); ((packet[0] & 0x30) >> 4);