From 82c9235bb194b7f535ed46516d793a96a0d30bf4 Mon Sep 17 00:00:00 2001 From: Joe Wilm Date: Fri, 3 Feb 2017 19:42:25 -0800 Subject: [PATCH] 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. --- src/term/mod.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/term/mod.rs b/src/term/mod.rs index e4c64fa5..633aa904 100644 --- a/src/term/mod.rs +++ b/src/term/mod.rs @@ -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]