diff --git a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageUtil.java b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageUtil.java index eacdcfa2db52..82b2cf74704c 100644 --- a/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageUtil.java +++ b/platform/lang-impl/src/com/intellij/psi/impl/source/tree/injected/InjectedLanguageUtil.java @@ -689,7 +689,7 @@ public class InjectedLanguageUtil { public static void putInjectedFileUserData(@NotNull PsiElement element, @NotNull Language language, @NotNull Key key, - T value) { + @Nullable T value) { PsiFile file = getCachedInjectedFileWithLanguage(element, language); if (file != null) { file.putUserData(key, value); @@ -718,7 +718,8 @@ public class InjectedLanguageUtil { .getCachedInjectedDocumentsInRange(containingFile, element.getTextRange()) .stream() .map(documentWindow -> PsiDocumentManager.getInstance(containingFile.getProject()).getPsiFile(documentWindow)) - .filter(file -> file != null && file.getLanguage() == language) + .filter(file -> file != null && file.getLanguage() == LanguageSubstitutors.INSTANCE.substituteLanguage(language, file.getVirtualFile(), + file.getProject())) .findFirst() .orElse(null); }