From 2a63a47d5acd4e4fce7dd6db300fe958944aa14c Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Sun, 22 Apr 2018 00:44:48 +0200 Subject: [PATCH] wayland: Do not reset frame list when merging pending state In the synchronized subsurface case, the destination list may contain other elements from previous wl_surface.commit calls. Resetting the list will leave those dangling frame callbacks that will lead to invalid writes when those get to be destroyed (eg. on client shutdown). --- src/wayland/meta-wayland-surface.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/wayland/meta-wayland-surface.c b/src/wayland/meta-wayland-surface.c index a2a8a4f90..92225cb6d 100644 --- a/src/wayland/meta-wayland-surface.c +++ b/src/wayland/meta-wayland-surface.c @@ -464,7 +464,6 @@ merge_pending_state (MetaWaylandPendingState *from, to->dy = from->dy; } - wl_list_init (&to->frame_callback_list); wl_list_insert_list (&to->frame_callback_list, &from->frame_callback_list); cairo_region_union (to->surface_damage, from->surface_damage);