From 626fe0cba10a9d8d7c0401063940b8192f99b6c0 Mon Sep 17 00:00:00 2001 From: cushon Date: Fri, 29 Jun 2018 07:14:04 -0700 Subject: Add a null-check to Whitelist handling PiperOrigin-RevId: 202642497 --- .../devtools/build/lib/analysis/whitelisting/Whitelist.java | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/google/devtools/build/lib/analysis/whitelisting/Whitelist.java b/src/main/java/com/google/devtools/build/lib/analysis/whitelisting/Whitelist.java index 261a09bf5d..a0095c36cf 100644 --- a/src/main/java/com/google/devtools/build/lib/analysis/whitelisting/Whitelist.java +++ b/src/main/java/com/google/devtools/build/lib/analysis/whitelisting/Whitelist.java @@ -16,9 +16,11 @@ package com.google.devtools.build.lib.analysis.whitelisting; import static com.google.devtools.build.lib.packages.Attribute.attr; import static com.google.devtools.build.lib.packages.BuildType.LABEL; +import static java.util.Objects.requireNonNull; import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; +import com.google.common.collect.Streams; import com.google.devtools.build.lib.analysis.PackageSpecificationProvider; import com.google.devtools.build.lib.analysis.RuleContext; import com.google.devtools.build.lib.analysis.TransitiveInfoCollection; @@ -63,11 +65,10 @@ public final class Whitelist { Preconditions.checkArgument(ruleContext.isAttrDefined(attributeName, LABEL)); TransitiveInfoCollection packageGroup = ruleContext.getPrerequisite(attributeName, Mode.HOST); Label label = ruleContext.getLabel(); - return packageGroup - .getProvider(PackageSpecificationProvider.class) - .getPackageSpecifications() - .toList() - .stream() + PackageSpecificationProvider packageSpecificationProvider = + packageGroup.getProvider(PackageSpecificationProvider.class); + requireNonNull(packageSpecificationProvider, packageGroup.getLabel().toString()); + return Streams.stream(packageSpecificationProvider.getPackageSpecifications()) .anyMatch(p -> p.containsPackage(label.getPackageIdentifier())); } -- cgit v1.2.3