diff options
Diffstat (limited to 'java/java-impl/src/com/intellij/refactoring/rename/RenameJavaMethodProcessor.java')
-rw-r--r-- | java/java-impl/src/com/intellij/refactoring/rename/RenameJavaMethodProcessor.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/java/java-impl/src/com/intellij/refactoring/rename/RenameJavaMethodProcessor.java b/java/java-impl/src/com/intellij/refactoring/rename/RenameJavaMethodProcessor.java index c410d763dac1..f09da834c348 100644 --- a/java/java-impl/src/com/intellij/refactoring/rename/RenameJavaMethodProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/rename/RenameJavaMethodProcessor.java @@ -210,10 +210,16 @@ public class RenameJavaMethodProcessor extends RenameJavaMemberProcessor { if (element instanceof PsiReferenceExpression) { if (((PsiReferenceExpression)element).resolve() == methodToRename) { final PsiElement parent = element.getParent(); - LOG.assertTrue(parent instanceof PsiMethodCallExpression, parent.getText()); - final PsiMethodCallExpression copy = (PsiMethodCallExpression)JavaPsiFacade.getElementFactory(element.getProject()) - .createExpressionFromText(parent.getText(), element); - final PsiReferenceExpression expression = (PsiReferenceExpression)processRef(copy.getMethodExpression(), newName); + final PsiReferenceExpression copyRef; + if (parent instanceof PsiMethodCallExpression) { + final PsiMethodCallExpression copy = (PsiMethodCallExpression)JavaPsiFacade.getElementFactory(element.getProject()) + .createExpressionFromText(parent.getText(), element); + copyRef = copy.getMethodExpression(); + } else { + LOG.assertTrue(element instanceof PsiMethodReferenceExpression, element.getText()); + copyRef = (PsiReferenceExpression)element.copy(); + } + final PsiReferenceExpression expression = (PsiReferenceExpression)processRef(copyRef, newName); if (expression == null) continue; final JavaResolveResult resolveResult = expression.advancedResolve(true); final PsiMember resolveResultElement = (PsiMember)resolveResult.getElement(); |