Fix an arithmetic overflow in reparser

This commit is contained in:
pcpthm 2019-03-22 02:22:06 +09:00
parent 4c7142d0c9
commit 0acb61a911
3 changed files with 11 additions and 5 deletions

View file

@ -48,10 +48,10 @@ impl SyntaxError {
}
}
pub fn add_offset(mut self, plus_offset: TextUnit) -> SyntaxError {
pub fn add_offset(mut self, plus_offset: TextUnit, minus_offset: TextUnit) -> SyntaxError {
self.location = match self.location {
Location::Range(range) => Location::Range(range + plus_offset),
Location::Offset(offset) => Location::Offset(offset + plus_offset),
Location::Range(range) => Location::Range(range + plus_offset - minus_offset),
Location::Offset(offset) => Location::Offset(offset + plus_offset - minus_offset),
};
self