On Sun, Oct 9, 2022 at 8:28 PM José Expósito <jose.exposito89@xxxxxxxxx> wrote: > > Under certain conditions the Magic Trackpad can group 2 reports in a > single packet. The packet is split and the raw event function is > invoked recursively for each part. > > However, after processing each part, the BTN_MOUSE status is updated, > sending multiple click events. [1] > > Return after processing double reports to avoid this issue. > > Link: https://gitlab.freedesktop.org/libinput/libinput/-/issues/811 # [1] > Fixes: a462230e16ac ("HID: magicmouse: enable Magic Trackpad support") > Reported-by: Nulo <git@xxxxxxx> > Signed-off-by: José Expósito <jose.exposito89@xxxxxxxxx> > --- Applied to for-6.1/upstream-fixes, thanks for spotting that old bug :) Cheers, Benjamin > drivers/hid/hid-magicmouse.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/hid/hid-magicmouse.c b/drivers/hid/hid-magicmouse.c > index 664a624a363d..c9c968d4b36a 100644 > --- a/drivers/hid/hid-magicmouse.c > +++ b/drivers/hid/hid-magicmouse.c > @@ -480,7 +480,7 @@ static int magicmouse_raw_event(struct hid_device *hdev, > magicmouse_raw_event(hdev, report, data + 2, data[1]); > magicmouse_raw_event(hdev, report, data + 2 + data[1], > size - 2 - data[1]); > - break; > + return 0; > default: > return 0; > } > -- > 2.25.1 >