aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Fleming <matt.fleming@intel.com>2012-11-27 13:31:26 +0000
committerMatt Fleming <matt.fleming@intel.com>2012-11-27 13:44:12 +0000
commit75afaf55d70cda7a24533df124183f8624190438 (patch)
tree1fc691698540424a1a691fe6ad7e400e2a9acee7
parentc3e89bdc47f87b4c0753051fe3b6e0450e26f2f7 (diff)
downloadsyslinux-75afaf55d70cda7a24533df124183f8624190438.tar.gz
syslinux-75afaf55d70cda7a24533df124183f8624190438.tar.xz
syslinux-75afaf55d70cda7a24533df124183f8624190438.zip
Revert "menu: Make "menu clear" the default"
This reverts commit 6ab02b6682c0b693b3e4f9afcc2ab8775f804f0a. People are reporting that the above commit causes a regression in behaviour between 4.0x and 5.0x. It also makes the MENU CLEAR directive obsolete and requires that users change their existing config files to restore the old behaviour. The commit was intended to solve the same bug that commit 87320b8de8f3 ("ldlinux: Disable VGA graphics when loading a kernel") addresses but without breaking vesacon, see, commit e04ee714164d ('Revert "ldlinux: Disable VGA graphics when loading a kernel"') for more details. Reported-by: Ady <ady-sf@hotmail.com> Cc: H. Peter Anvin <hpa@zytor.com> Signed-off-by: Matt Fleming <matt.fleming@intel.com>
-rw-r--r--com32/menu/menumain.c10
-rw-r--r--com32/menu/readconfig.c4
2 files changed, 4 insertions, 10 deletions
diff --git a/com32/menu/menumain.c b/com32/menu/menumain.c
index 487f8299..dc99da6e 100644
--- a/com32/menu/menumain.c
+++ b/com32/menu/menumain.c
@@ -1110,7 +1110,7 @@ int main(int argc, char *argv[])
{
const char *cmdline;
struct menu *m;
- int rows, cols, cursorrow;
+ int rows, cols;
int i;
(void)argc;
@@ -1152,15 +1152,11 @@ int main(int argc, char *argv[])
local_cursor_enable(true);
cmdline = run_menu();
- if (clearmenu) {
+ if (clearmenu)
clear_screen();
- cursorrow = 1;
- } else {
- cursorrow = END_ROW;
- }
local_cursor_enable(false);
- printf("\033[?25h\033[%d;1H\033[0m", cursorrow);
+ printf("\033[?25h\033[%d;1H\033[0m", END_ROW);
if (cmdline) {
uint32_t type = parse_image_type(cmdline);
diff --git a/com32/menu/readconfig.c b/com32/menu/readconfig.c
index 3690e480..d6f98733 100644
--- a/com32/menu/readconfig.c
+++ b/com32/menu/readconfig.c
@@ -35,7 +35,7 @@ struct menu *root_menu, *start_menu, *hide_menu, *menu_list;
/* These are global parameters regardless of which menu we're displaying */
int shiftkey = 0; /* Only display menu if shift key pressed */
int hiddenmenu = 0;
-int clearmenu = 1;
+int clearmenu = 0;
long long totaltimeout = 0;
const char *hide_key[KEY_MAX];
@@ -749,8 +749,6 @@ static void parse_config_file(FILE * f)
refstr_put(command);
} else if ((ep = looking_at(p, "clear"))) {
clearmenu = 1;
- } else if ((ep = looking_at(p, "noclear"))) {
- clearmenu = 0;
} else if ((ep = is_message_name(p, &msgnr))) {
refstr_put(m->messages[msgnr]);
m->messages[msgnr] = refstrdup(skipspace(ep));