IDEA-108838 Wrong code when introducing variable in injection

This commit is contained in:
Konstantin Ulitin
2013-11-25 12:19:50 +04:00
parent 07385a6ebe
commit f119c2e7c6
@@ -115,7 +115,8 @@ public class TemplateBuilderImpl implements TemplateBuilder {
}
public void replaceElement(PsiElement element, TextRange textRange, String primaryVariableName, String otherVariableName, boolean alwaysStopAt) {
final RangeMarker key = myDocument.createRangeMarker(textRange.shiftRight(element.getTextRange().getStartOffset()));
final TextRange elementTextRange = InjectedLanguageManager.getInstance(element.getProject()).injectedToHost(element, element.getTextRange());
final RangeMarker key = myDocument.createRangeMarker(textRange.shiftRight(elementTextRange.getStartOffset()));
myAlwaysStopAtMap.put(key, alwaysStopAt ? Boolean.TRUE : Boolean.FALSE);
myVariableNamesMap.put(key, primaryVariableName);
myVariableExpressions.put(key, otherVariableName);