The code managing this accounting mixed seat and tablet output lists,
can't bode well. Fixes invalid reads on list elements, as there are
dangling pointers.
Closes: https://gitlab.gnome.org/GNOME/gtk/issues/2157
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
{
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
{