summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Wu <zhiwen.wu@linux.intel.com>2012-03-05 11:01:40 +0800
committerKristian Høgsberg <krh@bitplanet.net>2012-03-08 12:57:54 -0500
commitaa08e2d56dcf3d1e8091cb0f452f599fbe57b84a (patch)
treefa017459769c3cabd5ddfdc7ca595ab3e1afe28a
parent60c4954b8a0667ad5e5f65110d0342b171f3a2a2 (diff)
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().
-rw-r--r--src/shell.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/shell.c b/src/shell.c
index 5d2c239..31989b9 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);
}