From 2c595e64ee14d7304cef6a8a9854f073fd227b76 Mon Sep 17 00:00:00 2001 From: peter Date: Wed, 20 Jun 2012 12:33:39 +0200 Subject: [PATCH] some range validity assertions (EA-36548) --- .../intellij/codeInsight/template/impl/TemplateState.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateState.java b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateState.java index 7db33ad96ae5..4f1a9d64b845 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateState.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/template/impl/TemplateState.java @@ -341,8 +341,11 @@ public class TemplateState implements Disposable { mySegments.addSegment(segmentOffset, segmentOffset); } + LOG.assertTrue(myTemplateRange.isValid()); calcResults(false); + LOG.assertTrue(myTemplateRange.isValid()); calcResults(false); //Fixed SCR #[vk500] : all variables should be recalced twice on start. + LOG.assertTrue(myTemplateRange.isValid()); doReformat(null); int nextVariableNumber = getNextVariableNumber(-1); @@ -377,6 +380,7 @@ public class TemplateState implements Disposable { public void run() { IntArrayList indices = initEmptyVariables(); mySegments.setSegmentsGreedy(false); + LOG.assertTrue(myTemplateRange.isValid()); reformat(finalRangeMarker); mySegments.setSegmentsGreedy(true); restoreEmptyVariables(indices); @@ -984,6 +988,7 @@ public class TemplateState implements Disposable { // and reformat wouldn't be able to fix them if (myTemplate.isToIndent()) { if (!myTemplateIndented) { + LOG.assertTrue(myTemplateRange.isValid()); smartIndent(myTemplateRange.getStartOffset(), myTemplateRange.getEndOffset()); myTemplateIndented = true; }