summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUcan, Emre (ADITG/SW1) <eucan@de.adit-jv.com>2015-08-19 11:25:01 +0000
committerPekka Paalanen <pekka.paalanen@collabora.co.uk>2015-08-20 11:19:03 +0300
commitc2be6388d274fa243472c844f0698e9634dec972 (patch)
tree66761c74500b3cacfa29cf4bd847373353c97226
parent3f897940d90c579a884b13c613440bc85aabda18 (diff)
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 <eucan@de.adit-jv.com> Tested-by: Nobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp> Reviewed-by: Nobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp>
-rw-r--r--ivi-shell/ivi-layout.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c
index 95b16710..d412069c 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;