Skip to content

Commit 1001e86

Browse files
committed
JS: Restrict Stage1 to the base database
1 parent b12d927 commit 1001e86

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

javascript/ql/lib/semmle/javascript/ApiGraphs.qll

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1545,8 +1545,15 @@ module API {
15451545
pragma[inline]
15461546
predicate isAdditionalDefRoot(Node node) { none() }
15471547

1548+
overlay[local]
1549+
private predicate isOverlay() { databaseMetadata("isOverlay", "true") }
1550+
15481551
bindingset[node]
1549-
predicate inScope(DataFlow::Node node) { any() }
1552+
predicate inScope(DataFlow::Node node) {
1553+
// In the base database, compute everything in stage 1.
1554+
// In an overlay database, do nothing in stage 1.
1555+
not isOverlay() and exists(node)
1556+
}
15501557
}
15511558

15521559
private module Stage1 = Stage<Stage1Input>;

0 commit comments

Comments
 (0)