[mutter/wip/carlosg/grabs-pt2: 111/111] wayland: Warn and fix accounting on missed touch events




commit 91d00d7e86880b5cea720f355afe987b29aa5265
Author: Carlos Garnacho <carlosg gnome org>
Date:   Mon Jan 17 13:18:53 2022 +0100

    wayland: Warn and fix accounting on missed touch events
    
    If we happen to handle a CLUTTER_TOUCH_BEGIN without a corresponding
    CLUTTER_TOUCH_END at MetaWaylandTouch, we would still attempt to
    reuse the older MetaWaylandTouchInfo. Warn in place and create a new
    one to still fix surface accounting, instead of finding out the hard
    way after the surface is destroyed.

 src/wayland/meta-wayland-touch.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
---
diff --git a/src/wayland/meta-wayland-touch.c b/src/wayland/meta-wayland-touch.c
index 15f0312eb3..0280195e8e 100644
--- a/src/wayland/meta-wayland-touch.c
+++ b/src/wayland/meta-wayland-touch.c
@@ -177,8 +177,11 @@ touch_get_info (MetaWaylandTouch     *touch,
 
   touch_info = g_hash_table_lookup (touch->touches, sequence);
 
-  if (!touch_info && create)
+  if (create)
     {
+      if (touch_info != NULL)
+        g_warning ("Stale touch information for sequence slot %p", sequence);
+
       touch_info = g_new0 (MetaWaylandTouchInfo, 1);
       touch_info->slot = clutter_event_sequence_get_slot (sequence);
       g_hash_table_insert (touch->touches, sequence, touch_info);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]