From ec7d4fb2f12ddf7af96248705ce8811216c3bc79 Mon Sep 17 00:00:00 2001 From: "Denis.Zhdanov" Date: Thu, 27 Sep 2012 14:17:55 +0400 Subject: [PATCH] IDEA-92081 Reformat causes syntax error when "Ensure margin not exceeded" --- .../editor/GenericLineWrapPositionStrategy.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/platform/platform-api/src/com/intellij/openapi/editor/GenericLineWrapPositionStrategy.java b/platform/platform-api/src/com/intellij/openapi/editor/GenericLineWrapPositionStrategy.java index c2b014dd4f03..185cebf39684 100644 --- a/platform/platform-api/src/com/intellij/openapi/editor/GenericLineWrapPositionStrategy.java +++ b/platform/platform-api/src/com/intellij/openapi/editor/GenericLineWrapPositionStrategy.java @@ -70,6 +70,10 @@ public class GenericLineWrapPositionStrategy implements LineWrapPositionStrategy return i + 1; } + if (!canUseOffset(document, i, virtual)) { + continue; + } + Rule rule = myRules.get(c); if (rule != null) { if (rule.condition == WrapCondition.BOTH || rule.condition == WrapCondition.AFTER) { @@ -114,6 +118,10 @@ public class GenericLineWrapPositionStrategy implements LineWrapPositionStrategy return i + 1; } + if (!canUseOffset(document, i, virtual)) { + continue; + } + Rule rule = myRules.get(c); if (rule != null) { switch (rule.condition) { @@ -132,6 +140,10 @@ public class GenericLineWrapPositionStrategy implements LineWrapPositionStrategy return -1; } + protected boolean canUseOffset(@NotNull Document document, int offset, boolean virtual) { + return true; + } + /** * Registers given rule with the current strategy. *