diff options
author | Lukacs Berki <lberki@google.com> | 2016-04-15 08:17:14 +0000 |
---|---|---|
committer | Dmitry Lomov <dslomov@google.com> | 2016-04-15 11:11:10 +0000 |
commit | a049b24cacfef245a0f6ef196436b64b953575ea (patch) | |
tree | 897e5684317ff85a9b311192c566f5d1a9c06764 /src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java | |
parent | f069d45bfa5f311ba1a908887df1826ec52c7a31 (diff) |
Assume that the targets required by LabelVisitor have already been loaded.
LabelVisitor is only used in BlazeQueryEnvironment#buildTransitiveClosure(), which takes care of this.
Very preliminary work for #1140.
--
MOS_MIGRATED_REVID=119933021
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java b/src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java index d330ce9034..872313605f 100644 --- a/src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java +++ b/src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java @@ -41,6 +41,7 @@ import com.google.devtools.build.lib.packages.RuleClass; import com.google.devtools.build.lib.packages.Target; import com.google.devtools.build.lib.pkgcache.PackageProvider; import com.google.devtools.build.lib.pkgcache.TargetEdgeObserver; +import com.google.devtools.build.lib.util.Preconditions; import java.util.Collection; import java.util.Map.Entry; @@ -344,11 +345,6 @@ final class LabelVisitor { @Override public void run() { try { - Target target = packageProvider.getTarget(eventHandler, label); - if (target == null) { - // Let target visitation continue so we can discover additional unknown inputs. - return; - } visit(from, attr, packageProvider.getTarget(eventHandler, label), depth + 1, count); } catch (NoSuchThingException e) { observeError(from, label, e); @@ -414,6 +410,9 @@ final class LabelVisitor { */ private void visit( Target from, Attribute attribute, final Target target, int depth, int count) { + Preconditions.checkNotNull(target, String.format("'%s' attribute '%s'", + from == null ? "(null)" : from.getLabel().toString(), + attribute == null ? "(null)" : attribute.getName())); if (depth > maxDepth) { return; } |