summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--discover/grub2/script.c8
-rw-r--r--test/parser/test-grub2-default-multiword.c4
2 files changed, 5 insertions, 7 deletions
diff --git a/discover/grub2/script.c b/discover/grub2/script.c
index 902df90..c910bf8 100644
--- a/discover/grub2/script.c
+++ b/discover/grub2/script.c
@@ -117,12 +117,10 @@ static bool option_is_default(struct grub2_script *script,
if (end != var && *end == '\0')
return default_idx == script->n_options;
- /* if we don't have an explicit id for this option, fall back to
- * the name */
- if (!id)
- id = opt->option->name;
+ if (id && !strcmp(id, var))
+ return true;
- return !strcmp(id, var);
+ return !strcmp(opt->option->name, var);
}
static void append_text_to_current_arg(struct grub2_argv *argv,
diff --git a/test/parser/test-grub2-default-multiword.c b/test/parser/test-grub2-default-multiword.c
index 25d1cf1..d455d62 100644
--- a/test/parser/test-grub2-default-multiword.c
+++ b/test/parser/test-grub2-default-multiword.c
@@ -3,10 +3,10 @@
#if 0 /* PARSER_EMBEDDED_CONFIG */
set default="Multiple word option"
-menuentry 'Non-defalt option' {
+menuentry 'Non-defalt option' --id=option0 {
linux /vmlinux.non-default
}
-menuentry 'Multiple word option' {
+menuentry 'Multiple word option' --id=option1 {
linux /vmlinux
}
#endif
OpenPOWER on IntegriCloud