From 7701e6d1e1dd5b510b02149c97e68c71cefc23b0 Mon Sep 17 00:00:00 2001 From: Michael Jennings Date: Thu, 13 Dec 2001 20:20:45 +0000 Subject: [PATCH] Thu Dec 13 15:14:33 2001 Michael Jennings (mej) An update to a previous patch from Paul Brannan . SVN revision: 5768 --- ChangeLog | 4 ++++ src/term.c | 11 ++++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index ceb659a..5247c1d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4431,3 +4431,7 @@ Tue Dec 4 16:38:15 2001 Michael Jennings (mej) Updated e-mail address for namsh at his request. ---------------------------------------------------------------------- +Thu Dec 13 15:14:33 2001 Michael Jennings (mej) + +An update to a previous patch from Paul Brannan . +---------------------------------------------------------------------- diff --git a/src/term.c b/src/term.c index c7ee3b7..e403823 100644 --- a/src/term.c +++ b/src/term.c @@ -1531,7 +1531,11 @@ process_terminal_mode(int mode, int priv, unsigned int nargs, int arg[]) case 1047: /* Alternate screen & clear */ PrivCases(PrivMode_Screen); scr_change_screen(state); - scr_erase_screen(0); + if (state) { + /* Only clear the screen when switching to the + secondary screen. Leave the primary intact. */ + scr_erase_screen(2); + } break; case 1048: /* Save/restore cursor pos */ PrivCases(PrivMode_Screen); @@ -1541,6 +1545,11 @@ process_terminal_mode(int mode, int priv, unsigned int nargs, int arg[]) PrivCases(PrivMode_Screen); scr_cursor(state ? SAVE : RESTORE); scr_change_screen(state); + if (state) { + /* Only clear the screen when switching to the + secondary screen. Leave the primary intact. */ + scr_erase_screen(2); + } break; } break;