Fix bug with restore cursor

The saved cursor position could previously end up outside of the grid if
the terminal was resized to be smaller and then calling a restore.
Restore now ensures the cursor line and column are within grid bounds.
This commit is contained in:
Joe Wilm 2017-02-03 19:42:25 -08:00 committed by Joe Wilm
parent 8f2e7b08a6
commit 82c9235bb1
1 changed files with 2 additions and 0 deletions

View File

@ -1086,6 +1086,8 @@ impl ansi::Handler for Term {
};
self.cursor = *holder;
self.cursor.point.line = min(self.cursor.point.line, self.grid.num_lines() - 1);
self.cursor.point.col = min(self.cursor.point.col, self.grid.num_cols() - 1);
}
#[inline]