diff --git a/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java b/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java index 76febb3efe64..2402cb917776 100644 --- a/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java @@ -652,7 +652,7 @@ public class InlineMethodProcessor extends BaseRefactoringProcessor { PsiElement firstBodyElement = blockData.block.getFirstBodyElement(); if (firstBodyElement instanceof PsiWhiteSpace) firstBodyElement = PsiTreeUtil.skipWhitespacesForward(firstBodyElement); PsiElement firstAdded = null; - if (firstBodyElement != null) { + if (firstBodyElement != null && firstBodyElement != blockData.block.getRBrace()) { int last = statements.length - 1; /*PsiElement first = statements[0]; PsiElement last = statements[statements.length - 1];*/ diff --git a/java/java-tests/testData/refactoring/inlineMethod/SkipEmptyMethod.java b/java/java-tests/testData/refactoring/inlineMethod/SkipEmptyMethod.java new file mode 100644 index 000000000000..9dcf5f3a9037 --- /dev/null +++ b/java/java-tests/testData/refactoring/inlineMethod/SkipEmptyMethod.java @@ -0,0 +1,6 @@ +class Test { + { + a(); + } + void a() {} +} \ No newline at end of file diff --git a/java/java-tests/testData/refactoring/inlineMethod/SkipEmptyMethod.java.after b/java/java-tests/testData/refactoring/inlineMethod/SkipEmptyMethod.java.after new file mode 100644 index 000000000000..8113c15923d0 --- /dev/null +++ b/java/java-tests/testData/refactoring/inlineMethod/SkipEmptyMethod.java.after @@ -0,0 +1,5 @@ +class Test { + { + } + void a() {} +} \ No newline at end of file diff --git a/java/java-tests/testSrc/com/intellij/java/refactoring/inline/InlineMethodTest.java b/java/java-tests/testSrc/com/intellij/java/refactoring/inline/InlineMethodTest.java index 12dceebdeb18..3fefab6a54a8 100644 --- a/java/java-tests/testSrc/com/intellij/java/refactoring/inline/InlineMethodTest.java +++ b/java/java-tests/testSrc/com/intellij/java/refactoring/inline/InlineMethodTest.java @@ -259,6 +259,10 @@ public class InlineMethodTest extends LightRefactoringTestCase { doTestInlineThisOnly(); } + public void testSkipEmptyMethod() { + doTestInlineThisOnly(); + } + public void testOneLineLambdaVoidCompatibleToBlock() { doTestInlineThisOnly(); }