Alexey Kudravtsev
2010-03-25 13:50:01 +03:00
parent 9bd65d25bf
commit 3757d90f0c
2 changed files with 5 additions and 2 deletions
@@ -2158,6 +2158,7 @@ public final class EditorImpl extends UserDataHolderBase implements EditorEx, Hi
public int logicalPositionToOffset(@NotNull LogicalPosition pos) {
assertReadAccess();
assertIsDispatchThread();
if (myDocument.getLineCount() == 0) return 0;
if (pos.line < 0) throw new IndexOutOfBoundsException("Wrong line: " + pos.line);
@@ -30,6 +30,7 @@ public abstract class HighlighterList {
private final SortedList<RangeHighlighterImpl> mySegmentHighlighters = new SortedList<RangeHighlighterImpl>(MY_RANGE_COMPARATOR) {
@Override
protected void sort(List<RangeHighlighterImpl> delegate) {
assertDispatchThread();
Iterator<RangeHighlighterImpl> it = delegate.iterator();
boolean needSort = false;
RangeHighlighterImpl lastHighlighter = null;
@@ -69,8 +70,9 @@ public abstract class HighlighterList {
private static final Comparator<RangeHighlighterImpl> MY_RANGE_COMPARATOR = new Comparator<RangeHighlighterImpl>() {
public int compare(RangeHighlighterImpl r1, RangeHighlighterImpl r2) {
if (r1.getAffectedAreaStartOffset() != r2.getAffectedAreaStartOffset()) {
return r1.getAffectedAreaStartOffset() - r2.getAffectedAreaStartOffset();
int o = r1.getAffectedAreaStartOffset() - r2.getAffectedAreaStartOffset();
if (o != 0) {
return o;
}
if (r1.getLayer() != r2.getLayer()) {