diff options
author | Alex Wu <zhiwen.wu@linux.intel.com> | 2012-03-05 11:01:40 +0800 |
---|---|---|
committer | Kristian Høgsberg <krh@bitplanet.net> | 2012-03-08 12:57:54 -0500 |
commit | aa08e2d56dcf3d1e8091cb0f452f599fbe57b84a (patch) | |
tree | fa017459769c3cabd5ddfdc7ca595ab3e1afe28a | |
parent | 60c4954b8a0667ad5e5f65110d0342b171f3a2a2 (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.c | 3 |
1 files changed, 3 insertions, 0 deletions
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); } |