X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=test%2Fparser%2Futils.c;h=7ebb411c0c9f6eb664991da10e75b7fb684a64c3;hp=de1dc13e8da60cfd789fb1b28ab62dd4d977e49d;hb=85d8a6966cbf5c97023c11620cabd8a63b883e07;hpb=402884d9d5835879f3c75657a46492cc03261255 diff --git a/test/parser/utils.c b/test/parser/utils.c index de1dc13..7ebb411 100644 --- a/test/parser/utils.c +++ b/test/parser/utils.c @@ -206,10 +206,19 @@ void __check_boot_option_count(struct discover_context *ctx, int count, const char *file, int line) { struct discover_boot_option *opt; - int i = 0; + int defaults = 0, i = 0; - list_for_each_entry(&ctx->boot_options, opt, list) + list_for_each_entry(&ctx->boot_options, opt, list) { i++; + if (opt->option->is_default) + defaults++; + } + + if (defaults > 1) { + fprintf(stderr, "%s:%d: parser returned multiple default " + "options\n", file, line); + exit(EXIT_FAILURE); + } if (i == count) return;