Skip to content

Commit bc6834e

Browse files
committed
more
1 parent fe977bd commit bc6834e

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

nullaway/src/main/java/com/uber/nullaway/NullAway.java

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2137,19 +2137,23 @@ private Description handleInvocation(
21372137
: Nullness.varargsArrayIsNullable(varargsFormalParam, config)
21382138
? Nullness.NULLABLE
21392139
: Nullness.NONNULL;
2140-
Nullness handlerVarargsArrayNullness =
2140+
Nullness explicitVarargsArrayNullness =
21412141
handler.onOverrideMethodInvocationVarargsArrayNullability(
2142-
state.context, methodSymbol, isMethodAnnotated, baseVarargsArrayNullness);
2142+
state.context, methodSymbol, isMethodAnnotated, null);
21432143
boolean shouldCheckVarargsArray =
21442144
shouldCheckVarargsArray(
21452145
isMethodAnnotated,
21462146
finalArgumentPositionNullness,
21472147
varargsFormalParam,
21482148
restrictiveNonNullVarargsArray,
2149-
handlerVarargsArrayNullness);
2149+
explicitVarargsArrayNullness);
2150+
Nullness effectiveVarargsArrayNullness =
2151+
explicitVarargsArrayNullness != null
2152+
? explicitVarargsArrayNullness
2153+
: baseVarargsArrayNullness;
21502154
if (shouldCheckVarargsArray) {
21512155
// If varargs array itself is not @Nullable, cannot pass @Nullable array
2152-
if (!Objects.equals(handlerVarargsArrayNullness, Nullness.NULLABLE)) {
2156+
if (!Objects.equals(effectiveVarargsArrayNullness, Nullness.NULLABLE)) {
21532157
mayActualBeNull = mayBeNullExpr(state, actual);
21542158
}
21552159
}
@@ -2188,7 +2192,7 @@ private boolean shouldCheckVarargsArray(
21882192
@Nullable Nullness[] finalArgumentPositionNullness,
21892193
@Nullable VarSymbol varargsFormalParam,
21902194
boolean restrictiveNonNullVarargsArray,
2191-
@Nullable Nullness handlerVarargsArrayNullness) {
2195+
@Nullable Nullness explicitVarargsArrayNullness) {
21922196
if (varargsFormalParam == null) {
21932197
return false;
21942198
}
@@ -2199,7 +2203,7 @@ private boolean shouldCheckVarargsArray(
21992203
finalArgumentPositionNullness[finalArgumentPositionNullness.length - 1]))
22002204
|| restrictiveNonNullVarargsArray
22012205
|| NullabilityUtil.hasJetBrainsNotNullDeclarationAnnotation(varargsFormalParam)
2202-
|| handlerVarargsArrayNullness != null;
2206+
|| explicitVarargsArrayNullness != null;
22032207
}
22042208

22052209
private Description checkCastToNonNullTakesNullable(

0 commit comments

Comments
 (0)