summaryrefslogtreecommitdiffstats
path: root/grid.c
diff options
context:
space:
mode:
authornicm <nicm>2017-09-11 06:40:46 +0000
committernicm <nicm>2017-09-11 06:40:46 +0000
commit6fdaaa06372302f0c35e128d34a9fbd19de9cd00 (patch)
treeef76f4d626b9dc8a8b9ac003896ea089b1c220d3 /grid.c
parent70bc07a35831d653f83395cc351066a5a7c1256d (diff)
Do not free more lines than are available in the history.
Diffstat (limited to 'grid.c')
-rw-r--r--grid.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/grid.c b/grid.c
index c26db476..aa9aea4c 100644
--- a/grid.c
+++ b/grid.c
@@ -292,12 +292,14 @@ grid_collect_history(struct grid *gd)
{
u_int ny;
- if (gd->hsize < gd->hlimit)
+ if (gd->hsize == 0 || gd->hsize < gd->hlimit)
return;
ny = gd->hlimit / 10;
if (ny < 1)
ny = 1;
+ if (ny > gd->hsize)
+ ny = gd->hsize;
/*
* Free the lines from 0 to ny then move the remaining lines over