From: Matt Fleming Date: Tue, 9 Oct 2012 12:45:00 +0000 (+0100) Subject: menu: Add MENU GOTO support to the MENU DEFAULT parsing code X-Git-Tag: syslinux-4.06-pre13~7 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b0d5575ded49de084d1abdef3ab66b4c05d9bca9;p=platform%2Fupstream%2Fsyslinux.git 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 --- 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; }