From 10d50eb603ecedfdc8e1df628395f7d8179cc274 Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Wed, 4 Jul 2018 17:13:54 +0700 Subject: [PATCH] ReplaceNullCheckInspection: support parentheses --- .../com/intellij/codeInspection/ReplaceNullCheckInspection.java | 2 +- .../requireNonNull/beforeTernaryInvertedNonSimpleCheck.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/java/java-impl/src/com/intellij/codeInspection/ReplaceNullCheckInspection.java b/java/java-impl/src/com/intellij/codeInspection/ReplaceNullCheckInspection.java index a8f6244c8096..a71db62e7f56 100644 --- a/java/java-impl/src/com/intellij/codeInspection/ReplaceNullCheckInspection.java +++ b/java/java-impl/src/com/intellij/codeInspection/ReplaceNullCheckInspection.java @@ -296,7 +296,7 @@ public class ReplaceNullCheckInspection extends AbstractBaseJavaLocalInspectionT PsiBinaryExpression binOp = tryCast(ternary.getCondition(), PsiBinaryExpression.class); if(binOp == null) return null; PsiExpression value = ExpressionUtils.getValueComparedWithNull(binOp); - PsiReferenceExpression referenceExpression = tryCast(value, PsiReferenceExpression.class); + PsiReferenceExpression referenceExpression = tryCast(PsiUtil.skipParenthesizedExprDown(value), PsiReferenceExpression.class); if(referenceExpression == null) return null; PsiVariable variable = tryCast(referenceExpression.resolve(), PsiVariable.class); if(variable == null) return null; diff --git a/java/java-tests/testData/inspection/requireNonNull/beforeTernaryInvertedNonSimpleCheck.java b/java/java-tests/testData/inspection/requireNonNull/beforeTernaryInvertedNonSimpleCheck.java index bab6f6733566..3b435650025d 100644 --- a/java/java-tests/testData/inspection/requireNonNull/beforeTernaryInvertedNonSimpleCheck.java +++ b/java/java-tests/testData/inspection/requireNonNull/beforeTernaryInvertedNonSimpleCheck.java @@ -4,6 +4,6 @@ import java.util.*; class Test { public void test(Object o) { - o = o != null? o : new Object(); + o = (o) != null? o : new Object(); } } \ No newline at end of file