Merge branch 'wip/carlosg/tablet-invalid-reads-master' into 'master'

Fix invalid reads on tablet input (master)

Closes #2157

See merge request GNOME/gtk!1122
This commit is contained in:
Matthias Clasen 2019-10-09 12:18:26 +00:00
commit 919d823311

View File

@ -3327,6 +3327,8 @@ gdk_wayland_tablet_flush_frame_event (GdkWaylandTabletData *tablet,
if (!event)
return;
g_object_ref (event);
switch ((guint) event->any.type)
{
case GDK_MOTION_NOTIFY:
@ -3367,6 +3369,8 @@ gdk_wayland_tablet_flush_frame_event (GdkWaylandTabletData *tablet,
emulate_crossing (event->any.surface, NULL,
tablet->master, GDK_ENTER_NOTIFY,
GDK_CROSSING_NORMAL, time);
g_object_unref (event);
}
static GdkEvent *
@ -4490,7 +4494,7 @@ pointer_surface_enter (void *data,
if (tablet)
{
tablet->pointer_info.pointer_surface_outputs =
g_slist_append (seat->pointer_info.pointer_surface_outputs, output);
g_slist_append (tablet->pointer_info.pointer_surface_outputs, output);
}
else
{
@ -4519,7 +4523,7 @@ pointer_surface_leave (void *data,
if (tablet)
{
tablet->pointer_info.pointer_surface_outputs =
g_slist_remove (seat->pointer_info.pointer_surface_outputs, output);
g_slist_remove (tablet->pointer_info.pointer_surface_outputs, output);
}
else
{