summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2018-04-22 00:44:48 +0200
committerCarlos Garnacho <carlosg@gnome.org>2018-04-22 00:52:48 +0200
commit44502be56048b0023e0daf96118e7807690e125b (patch)
treefeb294abfbb80355c431a2eec3d92b5b5df73409
parent8cf42cd06caab4118082e28b80fc6691e14cc524 (diff)
downloadmutter-44502be56048b0023e0daf96118e7807690e125b.tar.gz
wayland: Do not reset frame list when merging pending statewip/carlosg/random-fixes
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).
-rw-r--r--src/wayland/meta-wayland-surface.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/wayland/meta-wayland-surface.c b/src/wayland/meta-wayland-surface.c
index e524571d8..f849d5b4d 100644
--- a/src/wayland/meta-wayland-surface.c
+++ b/src/wayland/meta-wayland-surface.c
@@ -468,7 +468,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);