From 0acb61a911659537c51daf6793c67ef0c2b55bc9 Mon Sep 17 00:00:00 2001 From: pcpthm Date: Fri, 22 Mar 2019 02:22:06 +0900 Subject: Fix an arithmetic overflow in reparser --- crates/ra_syntax/src/parsing/reparsing.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'crates/ra_syntax/src/parsing') diff --git a/crates/ra_syntax/src/parsing/reparsing.rs b/crates/ra_syntax/src/parsing/reparsing.rs index ba77a3b6c..b44cca49d 100644 --- a/crates/ra_syntax/src/parsing/reparsing.rs +++ b/crates/ra_syntax/src/parsing/reparsing.rs @@ -130,11 +130,11 @@ fn merge_errors( if e.offset() <= old_node.range().start() { res.push(e) } else if e.offset() >= old_node.range().end() { - res.push(e.add_offset(TextUnit::of_str(&edit.insert) - edit.delete.len())); + res.push(e.add_offset(TextUnit::of_str(&edit.insert), edit.delete.len())); } } for e in new_errors { - res.push(e.add_offset(old_node.range().start())); + res.push(e.add_offset(old_node.range().start(), 0.into())); } res } -- cgit v1.2.3