Re: [PATCH 2/2] skip all blobs that are not touches
flat view
From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2017-07-09 21:41:09
On Sun, Jul 09, 2017 at 08:54:51PM +0200, Florian Echtler wrote:
quoted hunk ↗ jump to hunk
The SUR40 labels all reported blobs as touch, token, or generic blob. Previously, all blobs were reported as touch regardless of type, causing lots of false positives. Present patch fixes this. Signed-off-by: Martin Kaltenbrunner <redacted> Signed-off-by: Florian Echtler <redacted> --- drivers/input/touchscreen/sur40.c | 2 ++ 1 file changed, 2 insertions(+)diff --git a/drivers/input/touchscreen/sur40.c b/drivers/input/touchscreen/sur40.c index 12bdee9..fbd4010 100644 --- a/drivers/input/touchscreen/sur40.c +++ b/drivers/input/touchscreen/sur40.c@@ -309,6 +309,8 @@ static void sur40_report_blob(struct sur40_blob *blob, struct input_dev *input) int slotnum = input_mt_get_slot_by_key(input, blob->blob_id); if (slotnum < 0 || slotnum >= MAX_CONTACTS) return; + if (blob->type != SUR40_TOUCH) + return;
I think we should be checking blob type before trying to get slot number.
input_mt_slot(input, slotnum); input_mt_report_slot_state(input, MT_TOOL_FINGER, 1); -- 2.7.4
Thanks. -- Dmitry