add default-option to bootmenu
authorFrank Wunderlich <frank-w@public-files.de>
Fri, 5 Oct 2018 09:41:59 +0000 (11:41 +0200)
committerTom Rini <trini@konsulko.com>
Mon, 26 Nov 2018 21:29:49 +0000 (16:29 -0500)
with this patch the selected Entry in bootmenu can be set by
environment-var bootmenu_default=<number>
Signed-off-by: Frank Wunderlich <frank-w@public-files.de>
cmd/bootmenu.c

index 21f353ffd3c76cdaf2aa1bdd3f7fc05a9faa62a2..979ac4a638df48b9552feb82dd80ddbe74e69b8e 100644 (file)
@@ -253,6 +253,7 @@ static struct bootmenu_data *bootmenu_create(int delay)
 
        int len;
        char *sep;
+       char *default_str;
        struct bootmenu_entry *entry;
 
        menu = malloc(sizeof(struct bootmenu_data));
@@ -263,6 +264,10 @@ static struct bootmenu_data *bootmenu_create(int delay)
        menu->active = 0;
        menu->first = NULL;
 
+       default_str = env_get("bootmenu_default");
+       if (default_str)
+               menu->active = (int)simple_strtol(default_str, NULL, 10);
+
        while ((option = bootmenu_getoption(i))) {
                sep = strchr(option, '=');
                if (!sep) {