diff --git a/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceFunctionalVariableHandler.java b/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceFunctionalVariableHandler.java index c47ddc0ef168..a30469cad62e 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceFunctionalVariableHandler.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceFunctionalVariableHandler.java @@ -57,6 +57,11 @@ public class IntroduceFunctionalVariableHandler extends IntroduceVariableHandler ExtractMethodHandler.selectAndPass(project, editor, file, new Pass() { @Override public void pass(PsiElement[] elements) { + if (elements.length == 0) { + String message = RefactoringBundle.getCannotRefactorMessage(RefactoringBundle.message("selected.block.should.represent.a.set.of.statements.or.an.expression")); + showErrorMessage(project , editor, message); + return; + } PsiElement anchorStatement = RefactoringUtil.getParentStatement(elements[0], false); PsiElement tempContainer = checkAnchorStatement(project, editor, anchorStatement); if (tempContainer == null) return;