summaryrefslogtreecommitdiffstats
path: root/screen-display.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2007-11-21 21:28:58 +0000
committerNicholas Marriott <nicholas.marriott@gmail.com>2007-11-21 21:28:58 +0000
commit1e5cb8d2e4511be550a409baa9060bbd16f2de0e (patch)
tree2fa7a5fe4e7c4ea6ebf9d6f1b0675e028ddb2020 /screen-display.c
parentf8686f126d28b08aabc1e56aa98ca9ee80e0c846 (diff)
Free entire screen when destroyed.
Diffstat (limited to 'screen-display.c')
-rw-r--r--screen-display.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/screen-display.c b/screen-display.c
index 786d704a..8aceb88c 100644
--- a/screen-display.c
+++ b/screen-display.c
@@ -1,4 +1,4 @@
-/* $Id: screen-display.c,v 1.3 2007-11-21 15:35:53 nicm Exp $ */
+/* $Id: screen-display.c,v 1.4 2007-11-21 21:28:58 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -180,9 +180,10 @@ screen_display_scroll_region_up(struct screen *s)
if (s->hsize == s->hlimit) {
/*
- * If the limit is hit, shift the whole thing up.
- * XXX this is inefficient, is there a better way?
+ * If the limit is hit, free the first and shift
+ * the whole thing up.
*/
+ screen_free_lines(s, 0, 1);
screen_move_lines(s, 0, 1, sy - 1);
} else {
s->hsize++;