Skip to content

Commit

Permalink
Merge branch 'yem-kconfig-rc-fixes' of git://gitorious.org/linux-kcon…
Browse files Browse the repository at this point in the history
…fig/linux-kconfig into kbuild/rc-fixes
  • Loading branch information
Michal Marek committed May 30, 2013
2 parents ad06156 + e983b7b commit 42a0940
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 11 deletions.
2 changes: 1 addition & 1 deletion scripts/config
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ while [ "$1" != "" ] ; do
;;
--refresh)
;;
--*-after)
--*-after|-E|-D|-M)
checkarg "$1"
A=$ARG
checkarg "$2"
Expand Down
9 changes: 5 additions & 4 deletions scripts/kconfig/lxdialog/menubox.c
Original file line number Diff line number Diff line change
Expand Up @@ -303,10 +303,11 @@ int dialog_menu(const char *title, const char *prompt,
}
}

if (i < max_choice ||
key == KEY_UP || key == KEY_DOWN ||
key == '-' || key == '+' ||
key == KEY_PPAGE || key == KEY_NPAGE) {
if (item_count() != 0 &&
(i < max_choice ||
key == KEY_UP || key == KEY_DOWN ||
key == '-' || key == '+' ||
key == KEY_PPAGE || key == KEY_NPAGE)) {
/* Remove highligt of current item */
print_item(scroll + choice, choice, FALSE);

Expand Down
11 changes: 6 additions & 5 deletions scripts/kconfig/mconf.c
Original file line number Diff line number Diff line change
Expand Up @@ -670,11 +670,12 @@ static void conf(struct menu *menu, struct menu *active_menu)
active_menu, &s_scroll);
if (res == 1 || res == KEY_ESC || res == -ERRDISPLAYTOOSMALL)
break;
if (!item_activate_selected())
continue;
if (!item_tag())
continue;

if (item_count() != 0) {
if (!item_activate_selected())
continue;
if (!item_tag())
continue;
}
submenu = item_data();
active_menu = item_data();
if (submenu)
Expand Down
15 changes: 14 additions & 1 deletion scripts/kconfig/menu.c
Original file line number Diff line number Diff line change
Expand Up @@ -146,11 +146,24 @@ struct property *menu_add_prop(enum prop_type type, char *prompt, struct expr *e
struct menu *menu = current_entry;

while ((menu = menu->parent) != NULL) {
struct expr *dup_expr;

if (!menu->visibility)
continue;
/*
* Do not add a reference to the
* menu's visibility expression but
* use a copy of it. Otherwise the
* expression reduction functions
* will modify expressions that have
* multiple references which can
* cause unwanted side effects.
*/
dup_expr = expr_copy(menu->visibility);

prop->visible.expr
= expr_alloc_and(prop->visible.expr,
menu->visibility);
dup_expr);
}
}

Expand Down

0 comments on commit 42a0940

Please sign in to comment.