inline: do not mess with qualifiers statically imported members (IDEA-83713)

This commit is contained in:
anna
2012-04-06 20:33:01 +02:00
parent 0c75f95c10
commit c660378357
4 changed files with 47 additions and 10 deletions
@@ -165,16 +165,16 @@ public class InlineConstantFieldProcessor extends BaseRefactoringProcessor {
if (expr instanceof PsiReferenceExpression) {
PsiExpression qExpression = ((PsiReferenceExpression)expr).getQualifierExpression();
if (qExpression != null) {
if (initializer1 instanceof PsiMethodCallExpression) {
PsiReferenceExpression methodExpression = ((PsiMethodCallExpression)initializer1).getMethodExpression();
if (methodExpression.getQualifierExpression() == null) {
methodExpression.setQualifierExpression(qExpression);
}
} else if (initializer1 instanceof PsiReferenceExpression) {
PsiReferenceExpression referenceExpression = (PsiReferenceExpression)initializer1;
if (referenceExpression.getQualifierExpression() == null) {
referenceExpression.setQualifierExpression(qExpression);
}
PsiReferenceExpression referenceExpression = null;
if (initializer1 instanceof PsiReferenceExpression) {
referenceExpression = (PsiReferenceExpression)initializer1;
} else if (initializer1 instanceof PsiMethodCallExpression) {
referenceExpression = ((PsiMethodCallExpression)initializer1).getMethodExpression();
}
if (referenceExpression != null &&
referenceExpression.getQualifierExpression() == null &&
!(referenceExpression.advancedResolve(false).getCurrentFileResolveScope() instanceof PsiImportStaticStatement)) {
referenceExpression.setQualifierExpression(qExpression);
}
}
}