From bace22175b7ab96d4caacfcb6d1d6b990eca93c1 Mon Sep 17 00:00:00 2001 From: Frank Wunderlich Date: Mon, 3 Dec 2018 11:23:41 +0100 Subject: [PATCH] ensure active menuitem is inside menu Hi, setting active menuitem currently can be outside of menu which results in invisible selection attached Patch fixes this regards Frank >From 1d9c4cb8b3e2dd9b0a7a6a2d4a21684d0a099dbf Mon Sep 17 00:00:00 2001 From: Frank Wunderlich Date: Sun, 2 Dec 2018 11:23:53 +0100 Subject: [PATCH] ensure active menuitem is inside menu if active menuitem is defined via environment var it can be outside the menu (>=menuitem-count) this patch resets this definition back to 0 Signed-off-by: Frank Wunderlich --- cmd/bootmenu.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/cmd/bootmenu.c b/cmd/bootmenu.c index 979ac4a..7f88c1e 100644 --- a/cmd/bootmenu.c +++ b/cmd/bootmenu.c @@ -351,6 +351,12 @@ static struct bootmenu_data *bootmenu_create(int delay) } menu->count = i; + + if ((menu->active >= menu->count)||(menu->active < 0)) { //ensure active menuitem is inside menu + printf("active menuitem (%d) is outside menu (0..%d)\n",menu->active,menu->count-1); + menu->active=0; + } + return menu; cleanup: -- 1.9.1