From 633a51f3d0cdb5245e68ddef4d9fef4e766dfce4 Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Thu, 15 Dec 2011 10:02:39 +0000 Subject: [PATCH] edje: use EINA_LIST_FOREACH_SAFE when removing item from a list. Bug spotted by Michael Bouchaud. SVN revision: 66250 --- legacy/edje/src/bin/edje_cc_out.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/legacy/edje/src/bin/edje_cc_out.c b/legacy/edje/src/bin/edje_cc_out.c index 75104fe637..db3cce5341 100644 --- a/legacy/edje/src/bin/edje_cc_out.c +++ b/legacy/edje/src/bin/edje_cc_out.c @@ -1536,10 +1536,10 @@ data_queue_copied_program_lookup(Edje_Part_Collection *pc, int *src, int *dest) void data_queue_image_lookup(char *name, int *dest, Eina_Bool *set) { - Eina_List *l; + Eina_List *l, *ln; Image_Lookup *il; - EINA_LIST_FOREACH(image_lookups, l, il) + EINA_LIST_FOREACH_SAFE(image_lookups, l, ln, il) { if (il->dest == dest) { @@ -1548,7 +1548,7 @@ data_queue_image_lookup(char *name, int *dest, Eina_Bool *set) il->name = mem_strdup(name); else { - image_lookups = eina_list_remove(image_lookups, il); + image_lookups = eina_list_remove_list(image_lookups, l); free(il); } }