summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCody Schroeder <schroederc@google.com>2022-06-16 11:21:04 -0700
committerGitHub <noreply@github.com>2022-06-16 18:21:04 +0000
commit74dc8410d24586bccb1f7853a8f37019fcba6e46 (patch)
treef02317ed3a832b38145283a972595c3766f27934
parentd753a4633a2f29581a9ae642bd8fb2a7043fc304 (diff)
downloadkythe-74dc8410d24586bccb1f7853a8f37019fcba6e46.tar.gz
fix(java_indexer): guard against NPE in ImmutableList (#5310)
-rw-r--r--kythe/java/com/google/devtools/kythe/analyzers/java/KytheTreeScanner.java9
1 files changed, 5 insertions, 4 deletions
diff --git a/kythe/java/com/google/devtools/kythe/analyzers/java/KytheTreeScanner.java b/kythe/java/com/google/devtools/kythe/analyzers/java/KytheTreeScanner.java
index 3ec372155..cdef86ceb 100644
--- a/kythe/java/com/google/devtools/kythe/analyzers/java/KytheTreeScanner.java
+++ b/kythe/java/com/google/devtools/kythe/analyzers/java/KytheTreeScanner.java
@@ -660,10 +660,8 @@ public class KytheTreeScanner extends JCTreeScanner<JavaNode, TreeContext> {
emitAnchor(ctx, EdgeKind.DEFINES, lambdaNode);
for (Type target : getTargets(lambda)) {
- if (target != null) {
- VName targetNode = getNode(target.asElement());
- entrySets.emitEdge(lambdaNode, EdgeKind.EXTENDS, targetNode);
- }
+ VName targetNode = getNode(target.asElement());
+ entrySets.emitEdge(lambdaNode, EdgeKind.EXTENDS, targetNode);
}
scan(lambda.body, ctx);
@@ -672,6 +670,9 @@ public class KytheTreeScanner extends JCTreeScanner<JavaNode, TreeContext> {
}
private static Iterable<Type> getTargets(JCFunctionalExpression node) {
+ if (node == null || node.target == null) {
+ return ImmutableList.of();
+ }
return ImmutableList.of(node.target);
}