summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/display.c7
-rw-r--r--src/extern.h1
-rw-r--r--src/screen.c1
-rw-r--r--src/term.c1
4 files changed, 9 insertions, 1 deletions
diff --git a/src/display.c b/src/display.c
index d22f7fe..c3e9ddb 100644
--- a/src/display.c
+++ b/src/display.c
@@ -3407,4 +3407,9 @@ RunBlanker(char **cmdv)
}
-
+void
+ClearScrollbackBuffer()
+{
+ if (D_CE3)
+ AddCStr(D_CE3);
+}
diff --git a/src/extern.h b/src/extern.h
index f6132cd..a833a98 100644
--- a/src/extern.h
+++ b/src/extern.h
@@ -286,6 +286,7 @@ extern int color256to88 (int);
extern void ResetIdle (void);
extern void KillBlanker (void);
extern void DisplaySleep1000 (int, int);
+extern void ClearScrollbackBuffer (void);
/* resize.c */
extern int ChangeWindowSize (struct win *, int, int, int);
diff --git a/src/screen.c b/src/screen.c
index 4906e15..f8d06eb 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -1821,6 +1821,7 @@ Detach(int mode)
break;
case D_LOCK:
ClearAll();
+ ClearScrollbackBuffer();
sign = SIG_LOCK;
/* tell attacher to lock terminal with a lockprg. */
break;
diff --git a/src/term.c b/src/term.c
index 991de1b..7485900 100644
--- a/src/term.c
+++ b/src/term.c
@@ -83,6 +83,7 @@ struct term term[T_N] =
{ "CD", T_STR },
{ "ce", T_STR },
{ "cb", T_STR },
+ { "E3", T_STR },
/* initialise */
{ "is", T_STR },