[PATCH weston] compositor: reset surface's resource field on resource destruction

Giulio Camuffo giuliocamuffo at gmail.com
Wed Sep 11 09:24:32 PDT 2013


with the surface ref-count feature a surface may live on after its
resource was destroyed. set it to NULL in that case, so that code
like find_resource_for_surface() in input.c will act accordingly.
---
 src/compositor.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/compositor.c b/src/compositor.c
index 88df279..e4ce428 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -1070,6 +1070,9 @@ destroy_surface(struct wl_resource *resource)
 {
 	struct weston_surface *surface = wl_resource_get_user_data(resource);
 
+	/* the surface may live so make sure nothing thinks
+	   it still has a resource */
+	surface->resource = NULL;
 	weston_surface_destroy(surface);
 }
 
-- 
1.8.4



More information about the wayland-devel mailing list