From ed28f020b8dabc10655c238d41474efae9ce7036 Mon Sep 17 00:00:00 2001 From: Michael Teyfel Date: Tue, 17 Oct 2017 11:10:18 +0200 Subject: [PATCH] ivi-shell: remove surface_destroy_listener Since the surface_destroy_listener is only registered for ivi-shell applications, it should only be removed for ivi-shell applications. Signed-off-by: Michael Teyfel --- ivi-shell/ivi-shell.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ivi-shell/ivi-shell.c b/ivi-shell/ivi-shell.c index 902fb923..e716e2ce 100644 --- a/ivi-shell/ivi-shell.c +++ b/ivi-shell/ivi-shell.c @@ -156,6 +156,10 @@ layout_surface_cleanup(struct ivi_shell_surface *ivisurf) { assert(ivisurf->layout_surface != NULL); + /* destroy weston_surface destroy signal. */ + if (!ivisurf->layout_surface->weston_desktop_surface) + wl_list_remove(&ivisurf->surface_destroy_listener.link); + ivi_layout_surface_destroy(ivisurf->layout_surface); ivisurf->layout_surface = NULL; @@ -163,9 +167,6 @@ layout_surface_cleanup(struct ivi_shell_surface *ivisurf) ivisurf->surface->committed_private = NULL; weston_surface_set_label_func(ivisurf->surface, NULL); ivisurf->surface = NULL; - - // destroy weston_surface destroy signal. - wl_list_remove(&ivisurf->surface_destroy_listener.link); } /*