39 lines
1.2 KiB
Diff
39 lines
1.2 KiB
Diff
From 3c8b98066cc39a3c06dd9d09d3f4ad542dfa13b1 Mon Sep 17 00:00:00 2001
|
|
Message-ID: <3c8b98066cc39a3c06dd9d09d3f4ad542dfa13b1.1737996779.git.agx@sigxcpu.org>
|
|
From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
|
|
Date: Mon, 27 Jan 2025 17:48:39 +0100
|
|
Subject: [PATCH] seat: Don't forget to destroy touch points on touch up
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
Otherwise number of touch points goes up constantly and d'n'd via touch
|
|
can't work as validation always fails.
|
|
|
|
Fixes 75ecba44 ("seat: add serials to touch up events")
|
|
|
|
Signed-off-by: Guido Günther <agx@sigxcpu.org>
|
|
---
|
|
types/seat/wlr_seat_touch.c | 3 ++-
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/types/seat/wlr_seat_touch.c b/types/seat/wlr_seat_touch.c
|
|
index 09f33d6..cc5b7c8 100644
|
|
--- a/types/seat/wlr_seat_touch.c
|
|
+++ b/types/seat/wlr_seat_touch.c
|
|
@@ -214,9 +214,10 @@ uint32_t wlr_seat_touch_notify_up(struct wlr_seat *seat, uint32_t time,
|
|
return 0;
|
|
}
|
|
|
|
- return grab->interface->up(grab, time, point);
|
|
+ uint32_t serial = grab->interface->up(grab, time, point);
|
|
|
|
touch_point_destroy(point);
|
|
+ return serial;
|
|
}
|
|
|
|
void wlr_seat_touch_notify_motion(struct wlr_seat *seat, uint32_t time,
|
|
--
|
|
2.45.2
|
|
|