wayland/surface: Clear texture when attaching NULL
When 252e64a0ea
moved the texture
ownership to MetaWaylandSurface, it failed to handle the case when a
NULL-buffer is attached, leaving the texture reference in place. This
caused issues when the surface should have been hidden (e.g. attaching a
NULL buffer to a cursor surface for hiding the cursor sprite).
Related: https://gitlab.gnome.org/GNOME/mutter/issues/630
This commit is contained in:

committed by
Georges Basile Stavracas Neto

parent
9b53583945
commit
5eac1d696d
@ -737,6 +737,10 @@ meta_wayland_surface_apply_pending_state (MetaWaylandSurface *surface,
|
|||||||
g_clear_pointer (&snippet, cogl_object_unref);
|
g_clear_pointer (&snippet, cogl_object_unref);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
cogl_clear_object (&surface->texture);
|
||||||
|
}
|
||||||
|
|
||||||
/* If the newly attached buffer is going to be accessed directly without
|
/* If the newly attached buffer is going to be accessed directly without
|
||||||
* making a copy, such as an EGL buffer, mark it as in-use don't release
|
* making a copy, such as an EGL buffer, mark it as in-use don't release
|
||||||
|
Reference in New Issue
Block a user