on master help sign in
Don't crash if diagnostics span past EOF
d4e1ec3Blaž Hrastnik
helix-core/src/syntax.rs+5
@@ -1765,6 +1765,11 @@ impl<I: Iterator<Item = HighlightEvent>> Iterator for Merge<I> {
1765 self.next_event = self.iter.next();
1765 self.next_event = self.iter.next();
1766 Some(event)
1766 Some(event)
1767 }
1767 }
1768+ // can happen if deleting and cursor at EOF, and diagnostic reaches past the end
1769+ (None, Some((span, range))) => {
1770+ self.next_span = None;
1771+ None
1772+ }
1768 (None, None) => None,
1773 (None, None) => None,
1769 e => unreachable!("{:?}", e),
1774 e => unreachable!("{:?}", e),
1770 }
1775 }