9
0
Fork 0

menu: simplify menu_free with list_for_each_entry_safe

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Sascha Hauer 2010-08-21 17:03:20 +02:00
parent f371f04df2
commit a75d6dacc3
1 changed files with 3 additions and 9 deletions

View File

@ -39,21 +39,15 @@ struct menu* menu_get_menus(void)
void menu_free(struct menu *m)
{
struct list_head *pos;
struct menu_entry *me;
struct menu_entry *me, *tmp;
if (!m)
return;
free(m->name);
free(m->display);
pos = &m->entries.list;
if (pos->prev != pos->next && pos->prev != 0)
list_for_each(pos, &m->entries.list) {
me = list_entry(pos, struct menu_entry, list);
menu_entry_free(me);
}
list_for_each_entry_safe(me, tmp, &m->entries.list, list)
menu_entry_free(me);
free(m);
}