1 From 2a07b287851c974d684aa152486a63062aadd219 Mon Sep 17 00:00:00 2001
2 From: Nobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp>
3 Date: Wed, 25 Nov 2015 23:36:57 +0900
4 Subject: [PATCH 4/7] ivi-shell: fix layout_layer.view_list is not initilized
7 This is potential bug when it supports several screens. If view_list is
8 initilized here, the views, which are set by the previous screen, are
9 cleared. So View list shall be initilized in front of wl_list_for_each
12 Signed-off-by: Nobuhiko Tanibata <NOBUHIKO_TANIBATA@xddp.denso.co.jp>
13 Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
15 ivi-shell/ivi-layout.c | 6 +++---
16 1 file changed, 3 insertions(+), 3 deletions(-)
18 diff --git a/ivi-shell/ivi-layout.c b/ivi-shell/ivi-layout.c
19 index 9dbebb3..a7c5e22 100644
20 --- a/ivi-shell/ivi-layout.c
21 +++ b/ivi-shell/ivi-layout.c
22 @@ -1000,6 +1000,9 @@ commit_screen_list(struct ivi_layout *layout)
23 struct ivi_layout_layer *ivilayer = NULL;
24 struct ivi_layout_layer *next = NULL;
25 struct ivi_layout_surface *ivisurf = NULL;
27 + /* Clear view list of layout ivi_layer */
28 + wl_list_init(&layout->layout_layer.view_list.link);
30 wl_list_for_each(iviscrn, &layout->screen_list, link) {
31 if (iviscrn->order.dirty) {
32 @@ -1024,9 +1027,6 @@ commit_screen_list(struct ivi_layout *layout)
33 iviscrn->order.dirty = 0;
36 - /* Clear view list of layout ivi_layer */
37 - wl_list_init(&layout->layout_layer.view_list.link);
39 wl_list_for_each(ivilayer, &iviscrn->order.layer_list, order.link) {
40 if (ivilayer->prop.visibility == false)