From b0d5575ded49de084d1abdef3ab66b4c05d9bca9 Mon Sep 17 00:00:00 2001 From: Matt Fleming Date: Tue, 9 Oct 2012 13:45:00 +0100 Subject: [PATCH] menu: Add MENU GOTO support to the MENU DEFAULT parsing code Tomas reported that the 'test1' submenu in the following config file snippet doesn't honour the MENU DEFAULT directive, MENU BEGIN test0 MENU START LABEL - MENU DEFAULT MENU LABEL OptionA MENU GOTO test1 MENU END MENU BEGIN test1 LABEL - MENU LABEL OptionA1 MENU GOTO test0 LABEL - MENU DEFAULT MENU LABEL OptionB1 MENU GOTO test0 MENU END The reason is that the menu config code doesn't know how to handle a default item that is a MENU GOTO directive. A trivial addition to the code in record() fixes this. Reported-by: Tomas M Signed-off-by: Matt Fleming --- com32/menu/readconfig.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/com32/menu/readconfig.c b/com32/menu/readconfig.c index 0ac2564..431017f 100644 --- a/com32/menu/readconfig.c +++ b/com32/menu/readconfig.c @@ -392,7 +392,9 @@ static void record(struct menu *m, struct labeldata *ld, const char *append) break; } - if (ld->menudefault && me->action == MA_CMD) + if (ld->menudefault && (me->action == MA_CMD || + me->action == MA_GOTO || + me->action == MA_GOTO_UNRES)) m->defentry = m->nentries - 1; } -- 2.7.4