From f50d2063cbcd4a5ebd474445f9d9395918d342a1 Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Sat, 21 Aug 2010 18:49:55 +0200 Subject: menu: use an initialized struct list as menu list Signed-off-by: Sascha Hauer --- common/menu.c | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) (limited to 'common/menu.c') diff --git a/common/menu.c b/common/menu.c index 3596e215fd..6e6637addf 100644 --- a/common/menu.c +++ b/common/menu.c @@ -30,11 +30,14 @@ #include #include -static struct menu menus; +static LIST_HEAD(menus); struct menu* menu_get_menus(void) { - return &menus; + if (list_empty(&menus)) + return NULL; + + return list_entry(&menus, struct menu, list); } void menu_free(struct menu *m) @@ -60,7 +63,7 @@ int menu_add(struct menu *m) if (menu_get_by_name(m->name)) return -EEXIST; - list_add_tail(&m->list, &menus.list); + list_add_tail(&m->list, &menus); return 0; } @@ -112,7 +115,7 @@ struct menu* menu_get_by_name(char *name) if (!name) return NULL; - list_for_each_entry(m, &menus.list, list) { + list_for_each_entry(m, &menus, list) { if(strcmp(m->name, name) == 0) return m; } @@ -291,11 +294,3 @@ void menu_action_show(struct menu *m, struct menu_entry *me) menu_show(sm); } - -static int menu_init(void) -{ - INIT_LIST_HEAD(&menus.list); - - return 0; -} -postcore_initcall(menu_init); -- cgit v1.2.3