Add bounds checks to replace
This commit is contained in:
parent
9c83a98469
commit
2e4a338944
1 changed files with 4 additions and 2 deletions
|
@ -472,10 +472,12 @@ pub fn replace(cx: &mut Context) {
|
|||
|
||||
let transaction =
|
||||
Transaction::change_by_selection(doc.text(), doc.selection(view.id), |range| {
|
||||
let max_to = doc.text().len_chars().saturating_sub(1);
|
||||
let to = std::cmp::min(max_to, range.to() + 1);
|
||||
(
|
||||
range.from(),
|
||||
range.to() + 1,
|
||||
Some(text.repeat(range.to() - range.from() + 1).into()),
|
||||
to,
|
||||
Some(text.repeat(to - range.from()).into()),
|
||||
)
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in a new issue