summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2025-07-17 08:24:09 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2025-07-26 19:55:37 +0900
commit15a5ae3b0976d1190728044920cf6337a218ae62 (patch)
tree125017fa33d18f2d51057f07023e73f7e0ab2d1d /scripts
parent6d4d44254e43157bb760aa16367a394c2ab299b8 (diff)
kconfig: gconf: Fix Back button behavior
Clicking the Back button may navigate to a non-menu hierarchy level. [Example] menu "menu1" config A bool "A" default y config B bool "B" depends on A default y menu "menu2" depends on B config C bool "C" default y endmenu endmenu After being re-parented by menu_finalize(), the menu tree is structured like follows: menu "menu1" \-- A \-- B \-- menu "menu2" \-- C In Single view, visit "menu2" and click the Back button. It should go up to "menu1" and show A, B and "menu2", but instead goes up to A and show only B and "menu2". This is a bug in on_back_clicked(). Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/kconfig/gconf.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/scripts/kconfig/gconf.c b/scripts/kconfig/gconf.c
index c67b35807e8e..d9ea71664412 100644
--- a/scripts/kconfig/gconf.c
+++ b/scripts/kconfig/gconf.c
@@ -553,12 +553,8 @@ static void on_license1_activate(GtkMenuItem *menuitem, gpointer user_data)
/* toolbar handlers */
static void on_back_clicked(GtkButton *button, gpointer user_data)
{
- enum prop_type ptype;
+ browsed = menu_get_parent_menu(browsed) ?: &rootmenu;
- browsed = browsed->parent;
- ptype = browsed->prompt ? browsed->prompt->type : P_UNKNOWN;
- if (ptype != P_MENU)
- browsed = browsed->parent;
recreate_tree();
if (browsed == &rootmenu)