aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java
diff options
context:
space:
mode:
authorGravatar Lukacs Berki <lberki@google.com>2016-04-15 08:17:14 +0000
committerGravatar Dmitry Lomov <dslomov@google.com>2016-04-15 11:11:10 +0000
commita049b24cacfef245a0f6ef196436b64b953575ea (patch)
tree897e5684317ff85a9b311192c566f5d1a9c06764 /src/main/java/com/google/devtools/build/lib/query2/LabelVisitor.java
parentf069d45bfa5f311ba1a908887df1826ec52c7a31 (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.java9
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;
}