Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

kconfig: gconf: fix single view to display dependent symbols correctly

In the following example, the symbol C was never displayed in Single
view. Fix the recursion logic so that all symbols are shown.

menu "menu"

config A
bool "A"

config B
bool "B"
depends on A

config C
bool "C"
depends on B

endmenu

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>

+1 -15
+1 -15
scripts/kconfig/gconf.c
··· 914 914 static void _display_tree(GtkTreeStore *tree, struct menu *menu, 915 915 GtkTreeIter *parent) 916 916 { 917 - struct property *prop; 918 917 struct menu *child; 919 - enum prop_type ptype; 920 918 GtkTreeIter iter; 921 919 922 920 for (child = menu->list; child; child = child->next) { ··· 927 929 if (child->type == M_IF) 928 930 continue; 929 931 930 - prop = child->prompt; 931 - ptype = prop ? prop->type : P_UNKNOWN; 932 - 933 932 if ((view_mode == SPLIT_VIEW) 934 933 && !(child->flags & MENU_ROOT) && (tree == tree1)) 935 934 continue; ··· 938 943 gtk_tree_store_append(tree, &iter, parent); 939 944 set_node(tree, &iter, child); 940 945 941 - if ((view_mode == SINGLE_VIEW) && (ptype == P_MENU)) 942 - continue; 943 - /* 944 - if (((menu != &rootmenu) && !(menu->flags & MENU_ROOT)) 945 - || (view_mode == FULL_VIEW) 946 - || (view_mode == SPLIT_VIEW))*/ 947 - 948 - if (((view_mode == SINGLE_VIEW) && (menu->flags & MENU_ROOT)) 949 - || (view_mode == FULL_VIEW) 950 - || (view_mode == SPLIT_VIEW)) 946 + if (view_mode != SINGLE_VIEW || child->type != M_MENU) 951 947 _display_tree(tree, child, &iter); 952 948 } 953 949 }