From c2be6388d274fa243472c844f0698e9634dec972 Mon Sep 17 00:00:00 2001 From: "Ucan, Emre (ADITG/SW1)" Date: Wed, 19 Aug 2015 11:25:01 +0000 Subject: [PATCH] ivi-shell: bugfix, list of surfaces on a layer are cumulated when set render order is called several time in one commitchanges. The final list of surfaces of set render order shall be applied. So link of surfaces and list of surfaces in a layer shall be initialized. And then the order of surfaces shall be restructured. Use existing clear_surface_pending_list function to clear the list. Signed-off-by: Emre Ucan Tested-by: Nobuhiko Tanibata Reviewed-by: Nobuhiko Tanibata --- ivi-shell/ivi-layout.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c index 95b167100..d412069c8 100644 --- a/ivi-shell/ivi-layout.c +++ b/ivi-shell/ivi-layout.c @@ -2082,17 +2082,7 @@ ivi_layout_layer_set_render_order(struct ivi_layout_layer *ivilayer, return IVI_FAILED; } - if (pSurface == NULL) { - wl_list_for_each_safe(ivisurf, next, &ivilayer->pending.surface_list, pending.link) { - if (!wl_list_empty(&ivisurf->pending.link)) { - wl_list_remove(&ivisurf->pending.link); - } - - wl_list_init(&ivisurf->pending.link); - } - ivilayer->event_mask |= IVI_NOTIFICATION_REMOVE; - return IVI_SUCCEEDED; - } + clear_surface_pending_list(ivilayer); for (i = 0; i < number; i++) { id_surface = &pSurface[i]->id_surface;