aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java
diff options
context:
space:
mode:
authorGravatar carmi <carmi@google.com>2017-10-06 17:58:28 +0200
committerGravatar Klaus Aehlig <aehlig@google.com>2017-10-06 19:50:52 +0200
commit7ed032e7da2245062040e20879400955fe775616 (patch)
tree108a92703be6e094998d345c464d6a66d9059bd7 /src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java
parente79a1107d90380501102990d82cbfaa8f51a1778 (diff)
PackageLoader.loadPackages() tolerates duplicates in the list of packages to load.
RELNOTES: None PiperOrigin-RevId: 171298089
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java b/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java
index e8a6086fef..9ea8e98492 100644
--- a/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java
+++ b/src/main/java/com/google/devtools/build/lib/skyframe/packages/AbstractPackageLoader.java
@@ -252,11 +252,10 @@ public abstract class AbstractPackageLoader implements PackageLoader {
@Override
public ImmutableMap<PackageIdentifier, PackageLoader.PackageOrException> loadPackages(
Iterable<? extends PackageIdentifier> pkgIds) throws InterruptedException {
- ImmutableList.Builder<SkyKey> keysBuilder = ImmutableList.builder();
- for (PackageIdentifier pkgId : pkgIds) {
- keysBuilder.add(PackageValue.key(pkgId));
+ ArrayList<SkyKey> keys = new ArrayList<>();
+ for (PackageIdentifier pkgId : ImmutableSet.copyOf(pkgIds)) {
+ keys.add(PackageValue.key(pkgId));
}
- ImmutableList<SkyKey> keys = keysBuilder.build();
EvaluationResult<PackageValue> evalResult =
makeFreshDriver().evaluate(keys, /*keepGoing=*/ true, skyframeThreads, reporter);