summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--helix-view/src/view.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/helix-view/src/view.rs b/helix-view/src/view.rs
index f82de90e..b7bfaa17 100644
--- a/helix-view/src/view.rs
+++ b/helix-view/src/view.rs
@@ -143,8 +143,9 @@ impl View {
}
}
- let row = line - self.first_line as usize;
- let col = col - self.first_col as usize;
+ // It is possible for underflow to occur if the buffer length is larger than the terminal width.
+ let row = line.saturating_sub(self.first_line);
+ let col = col.saturating_sub(self.first_col);
Some(Position::new(row, col))
}