From: Samuel Mendoza-Jonas Date: Mon, 29 Jan 2018 03:21:47 +0000 (+1100) Subject: discover/device-handler: Treat empty boot order as 'boot any' X-Git-Tag: v1.7.0~5 X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=commitdiff_plain;h=ef13876e9feacc576724b7eba089d0483e84ceee discover/device-handler: Treat empty boot order as 'boot any' It is possible to have autoboot enabled with an empty boot order. Currently this acts as if autoboot is disabled, but it likely makes more sense to the user for this to behave as "autoboot any device". Signed-off-by: Samuel Mendoza-Jonas --- diff --git a/discover/device-handler.c b/discover/device-handler.c index 7a570f9..a6eb884 100644 --- a/discover/device-handler.c +++ b/discover/device-handler.c @@ -832,6 +832,9 @@ static enum default_priority default_option_priority( int boot_match = autoboot_option_priority(config, opt); if (boot_match > 0) return boot_match; + } else { + /* If there is no specific boot order, boot any device */ + return DEFAULT_PRIORITY_LOCAL_FIRST; } /* If the option didn't match any entry in the array, it is disabled */ diff --git a/ui/ncurses/nc-config.c b/ui/ncurses/nc-config.c index 58bae29..8ffa5ef 100644 --- a/ui/ncurses/nc-config.c +++ b/ui/ncurses/nc-config.c @@ -203,7 +203,7 @@ static int screen_process_form(struct config_screen *screen) const struct system_info *sysinfo = screen->cui->sysinfo; enum net_conf_type net_conf_type; struct interface_config *iface; - bool allow_write, autoboot; + bool allow_write; char *str, *end; struct config *config; int i, n_boot_opts, rc; @@ -218,8 +218,8 @@ static int screen_process_form(struct config_screen *screen) n_boot_opts = widget_subset_get_order(config, &order, screen->widgets.boot_order_f); - autoboot = widget_select_get_value(screen->widgets.autoboot_f); - config->autoboot_enabled = autoboot && n_boot_opts; + config->autoboot_enabled = widget_select_get_value( + screen->widgets.autoboot_f); config->n_autoboot_opts = n_boot_opts; config->autoboot_opts = talloc_array(config, struct autoboot_option,