Fix NPE in ExperimentalUsageChecker in corner case
Since there's no nullability assertion, null could end up in this list and cause NPE further at `reportNotAcceptedExperimentalities`. This could happen if a declaration was annotated with WasExperimental, the marker was annotated with the new RequiresOptIn, and API version 1.2 was used. No new tests are added because 1.2 is obsolete and WasExperimental is internal.
This commit is contained in:
+1
-1
@@ -130,7 +130,7 @@ class ExperimentalUsageChecker(project: Project) : CallChecker {
|
||||
if (annotations.any { it.fqName == WAS_EXPERIMENTAL_FQ_NAME }) {
|
||||
val accessibility = checkSinceKotlinVersionAccessibility(languageVersionSettings)
|
||||
if (accessibility is SinceKotlinAccessibility.NotAccessibleButWasExperimental) {
|
||||
result.addAll(accessibility.markerClasses.map { it.loadExperimentalityForMarkerAnnotation() })
|
||||
result.addAll(accessibility.markerClasses.mapNotNull { it.loadExperimentalityForMarkerAnnotation() })
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user