summaryrefslogtreecommitdiffstats
path: root/commands/menu.c
diff options
context:
space:
mode:
authorJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2012-04-23 14:27:02 +0800
committerJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>2012-04-25 18:37:40 +0800
commit76c9becdc2c623c7a5b4f14b60ff7442e2836621 (patch)
tree71a1aa106d137916af3dd175b826c5568df0bde5 /commands/menu.c
parent38f9300444edc7ed13af73940a9631bb5d5b881c (diff)
downloadbarebox-76c9becdc2c623c7a5b4f14b60ff7442e2836621.tar.gz
menu: fix non command management support
the auto select is always available Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Diffstat (limited to 'commands/menu.c')
-rw-r--r--commands/menu.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/commands/menu.c b/commands/menu.c
index e5ce5a9..8833d74 100644
--- a/commands/menu.c
+++ b/commands/menu.c
@@ -41,14 +41,14 @@ typedef enum {
struct cmd_menu {
char *menu;
menu_action action;
+ char *description;
+ int auto_select;
#if defined(CONFIG_CMD_MENU_MANAGEMENT)
int entry;
int re_entrant;
- char *description;
char *command;
char *submenu;
int num;
- int auto_select;
menu_entry_type type;
int box_state;
#endif
@@ -58,7 +58,7 @@ struct cmd_menu {
#define OPTS "m:earlc:d:RsSn:u:A:b:B:"
#define is_entry(x) ((x)->entry)
#else
-#define OPTS "m:ls"
+#define OPTS "m:lsA:d:"
#define is_entry(x) (0)
#endif
@@ -334,6 +334,12 @@ static int do_menu(int argc, char *argv[])
case 's':
cm.action = action_show;
break;
+ case 'A':
+ cm.auto_select = simple_strtoul(optarg, NULL, 10);
+ break;
+ case 'd':
+ cm.description = optarg;
+ break;
#if defined(CONFIG_CMD_MENU_MANAGEMENT)
case 'e':
cm.entry = 1;
@@ -350,9 +356,6 @@ static int do_menu(int argc, char *argv[])
case 'u':
cm.submenu = optarg;
break;
- case 'd':
- cm.description = optarg;
- break;
case 'R':
cm.re_entrant = 1;
break;
@@ -362,8 +365,6 @@ static int do_menu(int argc, char *argv[])
case 'n':
cm.num = simple_strtoul(optarg, NULL, 10);
break;
- case 'A':
- cm.auto_select = simple_strtoul(optarg, NULL, 10);
case 'b':
cm.type = MENU_ENTRY_BOX;
cm.box_state = simple_strtoul(optarg, NULL, 10);