range marker exception

This commit is contained in:
Alexey Kudravtsev
2009-11-02 14:12:10 +03:00
parent 50fb90ef2d
commit 44118f2f36
2 changed files with 8 additions and 3 deletions
@@ -32,16 +32,18 @@ public class PersistentLineMarker extends RangeMarkerImpl {
public void documentChanged(DocumentEvent e) {
if (!isValid()) return;
DocumentEventImpl event = (DocumentEventImpl) e;
DocumentEventImpl event = (DocumentEventImpl)e;
if (event.isWholeTextReplaced()) {
myLine = event.translateLineViaDiff(myLine);
if (myLine < 0 || myLine >= getDocument().getLineCount()) {
invalidate();
} else {
}
else {
myStart = MarkupModelImpl.getFirstNonspaceCharOffset(getDocument(), myLine);
myEnd = myStart;
}
} else {
}
else {
super.documentChanged(e);
if (isValid()) {
myLine = getDocument().getLineNumber(myStart);
@@ -65,6 +65,9 @@ public class PersistentRangeMarker extends RangeMarkerImpl {
else{
myEnd = getDocument().getLineStartOffset(myEndLine) + myEndColumn;
}
if (myEnd < myStart) {
invalidate();
}
}
else{
super.documentChanged(e);