diff --git a/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithNullCheckFix.kt b/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithNullCheckFix.kt index 624431f97c4..058b868e669 100644 --- a/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithNullCheckFix.kt +++ b/idea/src/org/jetbrains/kotlin/idea/quickfix/SurroundWithNullCheckFix.kt @@ -25,6 +25,7 @@ import org.jetbrains.kotlin.diagnostics.Errors import org.jetbrains.kotlin.idea.KotlinBundle import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.intentions.branchedTransformations.isStableSimpleExpression +import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.createSmartPointer import org.jetbrains.kotlin.psi.psiUtil.getLastParentOfTypeInRow @@ -68,7 +69,7 @@ class SurroundWithNullCheckFix( val nullableExpression = when (parent) { is KtDotQualifiedExpression -> parent.receiverExpression - is KtBinaryExpression -> parent.left + is KtBinaryExpression -> if (parent.operationToken == KtTokens.IN_KEYWORD) parent.right else parent.left is KtCallExpression -> parent.calleeExpression else -> return null } as? KtReferenceExpression ?: return null diff --git a/idea/testData/quickfix/surroundWithNullCheck/in.kt b/idea/testData/quickfix/surroundWithNullCheck/in.kt new file mode 100644 index 00000000000..dd9c5bac5a4 --- /dev/null +++ b/idea/testData/quickfix/surroundWithNullCheck/in.kt @@ -0,0 +1,4 @@ +// "Surround with null check" "true" +fun test(a: String, b: List?) { + a in b +} \ No newline at end of file diff --git a/idea/testData/quickfix/surroundWithNullCheck/in.kt.after b/idea/testData/quickfix/surroundWithNullCheck/in.kt.after new file mode 100644 index 00000000000..a3da26541f8 --- /dev/null +++ b/idea/testData/quickfix/surroundWithNullCheck/in.kt.after @@ -0,0 +1,6 @@ +// "Surround with null check" "true" +fun test(a: String, b: List?) { + if (b != null) { + a in b + } +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java index 39b227b294c..eb731ac49e8 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/quickfix/QuickFixTestGenerated.java @@ -13161,6 +13161,11 @@ public class QuickFixTestGenerated extends AbstractQuickFixTest { runTest("idea/testData/quickfix/surroundWithNullCheck/expressionUnsafeCall.kt"); } + @TestMetadata("in.kt") + public void testIn() throws Exception { + runTest("idea/testData/quickfix/surroundWithNullCheck/in.kt"); + } + @TestMetadata("infixUnsafeCall.kt") public void testInfixUnsafeCall() throws Exception { runTest("idea/testData/quickfix/surroundWithNullCheck/infixUnsafeCall.kt");