From ef13876e9feacc576724b7eba089d0483e84ceee Mon Sep 17 00:00:00 2001 From: Samuel Mendoza-Jonas Date: Mon, 29 Jan 2018 14:21:47 +1100 Subject: [PATCH] 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 --- discover/device-handler.c | 3 +++ ui/ncurses/nc-config.c | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) 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, -- 2.39.2