diff --git a/compiler/cli/src/org/jetbrains/jet/cli/common/messages/MessageUtil.java b/compiler/cli/src/org/jetbrains/jet/cli/common/messages/MessageUtil.java index b075cb8f671..7a864ee1512 100644 --- a/compiler/cli/src/org/jetbrains/jet/cli/common/messages/MessageUtil.java +++ b/compiler/cli/src/org/jetbrains/jet/cli/common/messages/MessageUtil.java @@ -16,14 +16,21 @@ package org.jetbrains.jet.cli.common.messages; +import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiFile; +import org.jetbrains.annotations.NotNull; import org.jetbrains.jet.lang.diagnostics.DiagnosticUtils; public class MessageUtil { - public static CompilerMessageLocation psiElementToMessageLocation(PsiElement element) { + private MessageUtil() {} + + @NotNull + public static CompilerMessageLocation psiElementToMessageLocation(@NotNull PsiElement element) { PsiFile file = element.getContainingFile(); DiagnosticUtils.LineAndColumn lineAndColumn = DiagnosticUtils.getLineAndColumnInPsiFile(file, element.getTextRange()); - return CompilerMessageLocation.create(file.getVirtualFile().getPath(), lineAndColumn.getLine(), lineAndColumn.getColumn()); + VirtualFile virtualFile = file.getVirtualFile(); + String path = virtualFile == null ? "" : virtualFile.getPath(); + return CompilerMessageLocation.create(path, lineAndColumn.getLine(), lineAndColumn.getColumn()); } }