commit | 9d64a9c5bbf13f6c6e4dad461f244bbc5a339b92 | [log] [tgz] |
---|---|---|
author | Louis Pullen-Freilich <lpf@google.com> | Mon Apr 26 20:15:58 2021 +0100 |
committer | Louis Pullen-Freilich <lpf@google.com> | Mon Apr 26 20:15:58 2021 +0100 |
tree | 53a3f3e231e213ff54ec0f19332839828e58a5d5 | |
parent | e069a51b06e89d59c0035d73f1285b38349ea4c1 [diff] |
Fixes crash in CrossfadeDetector Test: CrossfadeDetectorTest Change-Id: I17311a04ecefbc052844dbfab152528fb93ae8c2
diff --git a/compose/animation/animation-lint/src/main/java/androidx/compose/animation/lint/CrossfadeDetector.kt b/compose/animation/animation-lint/src/main/java/androidx/compose/animation/lint/CrossfadeDetector.kt index f3edff4..9dcc564 100644 --- a/compose/animation/animation-lint/src/main/java/androidx/compose/animation/lint/CrossfadeDetector.kt +++ b/compose/animation/animation-lint/src/main/java/androidx/compose/animation/lint/CrossfadeDetector.kt
@@ -48,7 +48,8 @@ override fun visitMethodCall(context: JavaContext, node: UCallExpression, method: PsiMethod) { if (method.isInPackageName(Names.Animation.PackageName)) { - val lambdaArgument = node.valueArguments.filterIsInstance<ULambdaExpression>().first() + val lambdaArgument = node.valueArguments.filterIsInstance<ULambdaExpression>() + .firstOrNull() ?: return lambdaArgument.findUnreferencedParameters().forEach { unreferencedParameter -> val location = unreferencedParameter.parameter
diff --git a/compose/animation/animation-lint/src/test/java/androidx/compose/animation/lint/CrossfadeDetectorTest.kt b/compose/animation/animation-lint/src/test/java/androidx/compose/animation/lint/CrossfadeDetectorTest.kt index 9b483b1..180b874 100644 --- a/compose/animation/animation-lint/src/test/java/androidx/compose/animation/lint/CrossfadeDetectorTest.kt +++ b/compose/animation/animation-lint/src/test/java/androidx/compose/animation/lint/CrossfadeDetectorTest.kt
@@ -177,6 +177,9 @@ Crossfade(foo) { param -> if (param) { /**/ } else { /**/ } } Crossfade(foo, content = { param -> if (param) { /**/ } else { /**/ } }) + val content : @Composable (Boolean) -> Unit = {} + Crossfade(foo, content = content) + Crossfade(foo) { param -> foo.let { it.let {