From 944fae8887642982473e1a541b8b37aef5c61d51 Mon Sep 17 00:00:00 2001 From: Pekka Paalanen Date: Tue, 22 May 2018 13:15:58 +0300 Subject: [PATCH] libweston: fix output destroy signal list corruption This issue was likely introduced by "libweston: add weston_view_set_output()" which forgot to ensure the output destroy listener is removed when weston_view is destroyed, leading to freed memory being left into the list. This was quite easy to trigger by opening and closing an application window a few times, leading various memory corruption symptoms. Signed-off-by: Pekka Paalanen Reviewed-by: Ian Ray --- libweston/compositor.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libweston/compositor.c b/libweston/compositor.c index 6a300e0d..619e88b3 100644 --- a/libweston/compositor.c +++ b/libweston/compositor.c @@ -1931,6 +1931,7 @@ weston_view_destroy(struct weston_view *view) pixman_region32_fini(&view->transform.opaque); weston_view_set_transform_parent(view, NULL); + weston_view_set_output(view, NULL); wl_list_remove(&view->surface_link);