From 25199acf698b927cb4e8c82c1e05bef24bf01341 Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Fri, 26 Jul 2013 19:05:07 +0400 Subject: [PATCH] do not create rangemarker even for already loaded document to avoid too many rangemarkers in OpenFileDescriptor --- .../openapi/editor/LazyRangeMarkerFactory.java | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/platform/platform-api/src/com/intellij/openapi/editor/LazyRangeMarkerFactory.java b/platform/platform-api/src/com/intellij/openapi/editor/LazyRangeMarkerFactory.java index fd01305b0cdf..78ba406c216f 100644 --- a/platform/platform-api/src/com/intellij/openapi/editor/LazyRangeMarkerFactory.java +++ b/platform/platform-api/src/com/intellij/openapi/editor/LazyRangeMarkerFactory.java @@ -38,8 +38,6 @@ import java.util.List; import java.util.concurrent.ConcurrentMap; public class LazyRangeMarkerFactory extends AbstractProjectComponent { - private static final Logger LOG = Logger.getInstance("#com.intellij.openapi.editor.LazyRangeMarkerFactory"); - private final ConcurrentMap> myMarkers = new ConcurrentWeakHashMap>(); public LazyRangeMarkerFactory(@NotNull Project project, @NotNull final FileDocumentManager fileDocumentManager) { @@ -82,13 +80,7 @@ public class LazyRangeMarkerFactory extends AbstractProjectComponent { return ApplicationManager.getApplication().runReadAction(new Computable() { @Override public RangeMarker compute() { - FileDocumentManager fdm = FileDocumentManager.getInstance(); - final Document document = fdm.getCachedDocument(file); - if (document != null) { - int _offset = Math.min(offset, document.getTextLength()); - return document.createRangeMarker(_offset, _offset); - } - + // even for already loaded document do not create range marker yet - wait until it really needed when e.g. user clicked to jump to OpenFileDescriptor final LazyMarker marker = new OffsetLazyMarker(file, offset); addToLazyMarkersList(marker, file); return marker;