From aa08e2d56dcf3d1e8091cb0f452f599fbe57b84a Mon Sep 17 00:00:00 2001 From: Alex Wu Date: Mon, 5 Mar 2012 11:01:40 +0800 Subject: [PATCH] shell: Fix not destroy black surface when fullscreen surface exit abnomally. When a client with fullscreen surface displayed was aborted by Ctrl-C, the black surface still be there. Destroy the black surface in destroy_shell_surface(). --- src/shell.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/shell.c b/src/shell.c index 5d2c239e..31989b9d 100644 --- a/src/shell.c +++ b/src/shell.c @@ -774,6 +774,9 @@ destroy_shell_surface(struct wl_resource *resource) if (shsurf->surface) wl_list_remove(&shsurf->surface_destroy_listener.link); + if (shsurf->fullscreen.black_surface) + weston_surface_destroy(shsurf->fullscreen.black_surface); + wl_list_remove(&shsurf->link); free(shsurf); }