From 0febe3322bdd003bbf43cb311d0067e297846ef4 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Fri, 18 Sep 2015 20:06:21 +0200 Subject: [PATCH] don't register template listener if we don't have an editor (EA-70683 - KNPE: OverrideImplementMethodsHandler.invoke) --- .../idea/liveTemplates/macro/JetAnonymousSuperMacro.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/liveTemplates/macro/JetAnonymousSuperMacro.java b/idea/src/org/jetbrains/kotlin/idea/liveTemplates/macro/JetAnonymousSuperMacro.java index 6ceabf7c958..2c913a9e16b 100644 --- a/idea/src/org/jetbrains/kotlin/idea/liveTemplates/macro/JetAnonymousSuperMacro.java +++ b/idea/src/org/jetbrains/kotlin/idea/liveTemplates/macro/JetAnonymousSuperMacro.java @@ -22,6 +22,7 @@ import com.intellij.codeInsight.template.Expression; import com.intellij.codeInsight.template.ExpressionContext; import com.intellij.codeInsight.template.Macro; import com.intellij.codeInsight.template.Result; +import com.intellij.openapi.editor.Editor; import com.intellij.openapi.project.Project; import com.intellij.psi.PsiDocumentManager; import com.intellij.psi.PsiElement; @@ -61,7 +62,10 @@ public class JetAnonymousSuperMacro extends Macro { @Override public Result calculateResult(@NotNull Expression[] params, ExpressionContext context) { - AnonymousTemplateEditingListener.registerListener(context.getEditor(), context.getProject()); + Editor editor = context.getEditor(); + if (editor != null) { + AnonymousTemplateEditingListener.registerListener(editor, context.getProject()); + } PsiNamedElement[] vars = getSupertypes(params, context); if (vars == null || vars.length == 0) return null;