diff options
Diffstat (limited to 'scripts/kconfig/conf.c')
-rw-r--r-- | scripts/kconfig/conf.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c index bc20cab9d0d6..dffbf2ea1f9d 100644 --- a/scripts/kconfig/conf.c +++ b/scripts/kconfig/conf.c | |||
@@ -467,15 +467,14 @@ static void check_conf(struct menu *menu) | |||
467 | return; | 467 | return; |
468 | 468 | ||
469 | sym = menu->sym; | 469 | sym = menu->sym; |
470 | if (sym) { | 470 | if (sym && !sym_has_value(sym)) { |
471 | if (sym_is_changable(sym) && !sym_has_value(sym)) { | 471 | if (sym_is_changable(sym) || |
472 | (sym_is_choice(sym) && sym_get_tristate_value(sym) == yes)) { | ||
472 | if (!conf_cnt++) | 473 | if (!conf_cnt++) |
473 | printf(_("*\n* Restart config...\n*\n")); | 474 | printf(_("*\n* Restart config...\n*\n")); |
474 | rootEntry = menu_get_parent_menu(menu); | 475 | rootEntry = menu_get_parent_menu(menu); |
475 | conf(rootEntry); | 476 | conf(rootEntry); |
476 | } | 477 | } |
477 | if (sym_is_choice(sym) && sym_get_tristate_value(sym) != mod) | ||
478 | return; | ||
479 | } | 478 | } |
480 | 479 | ||
481 | for (child = menu->list; child; child = child->next) | 480 | for (child = menu->list; child; child = child->next) |