diff options
author | Michal Marek <mmarek@suse.cz> | 2010-12-29 22:32:15 +0000 |
---|---|---|
committer | Michal Marek <mmarek@suse.cz> | 2010-12-29 22:32:15 +0000 |
commit | 03dc16b609bd3b7d22a6e16ffbf6b630124df735 (patch) | |
tree | 94e040e930124d65218e8261ac60d7ab7a03d3f2 /scripts | |
parent | 97accde005fe7a786113fa0c90906c0d26981e87 (diff) | |
parent | 7ad1227818f09242cfe9bf1845fd24211f5f99bd (diff) |
Merge branch 'rc-fixes' into for-next
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/kconfig/menu.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c index 79de46852bbd..5fdf10dc1d8a 100644 --- a/scripts/kconfig/menu.c +++ b/scripts/kconfig/menu.c @@ -140,6 +140,20 @@ struct property *menu_add_prop(enum prop_type type, char *prompt, struct expr *e } if (current_entry->prompt && current_entry != &rootmenu) prop_warn(prop, "prompt redefined"); + + /* Apply all upper menus' visibilities to actual prompts. */ + if(type == P_PROMPT) { + struct menu *menu = current_entry; + + while ((menu = menu->parent) != NULL) { + if (!menu->visibility) + continue; + prop->visible.expr + = expr_alloc_and(prop->visible.expr, + menu->visibility); + } + } + current_entry->prompt = prop; } prop->text = prompt; |