From 2bacc5e0ed30cbb7c70e524b53db8d46379f26c4 Mon Sep 17 00:00:00 2001 From: anna Date: Tue, 20 Jul 2010 10:24:51 +0400 Subject: [PATCH] NPE (EA-20586) --- .../introduceField/IntroduceFieldHandler.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldHandler.java b/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldHandler.java index 967b5054fd2d..69f89f7678b0 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldHandler.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldHandler.java @@ -65,9 +65,13 @@ public class IntroduceFieldHandler extends BaseExpressionToFieldHandler { protected Settings showRefactoringDialog(Project project, Editor editor, PsiClass parentClass, PsiExpression expr, PsiType type, PsiExpression[] occurences, PsiElement anchorElement, PsiElement anchorElementIfAll) { - final PsiMethod containingMethod = PsiTreeUtil.getParentOfType(expr, PsiMethod.class); - PsiElement element = expr.getUserData(ElementToWorkOn.PARENT); - if (element == null) element = expr; + final PsiMethod containingMethod = PsiTreeUtil.getParentOfType(expr != null ? expr : anchorElement, PsiMethod.class); + PsiElement element = null; + if (expr != null) { + element = expr.getUserData(ElementToWorkOn.PARENT); + if (element == null) element = expr; + } + if (element == null) element = anchorElement; final PsiModifierListOwner staticParentElement = PsiUtil.getEnclosingStaticElement(element, parentClass); boolean declareStatic = staticParentElement != null;