Skip to content

Commit 1b9793d

Browse files
committed
QL: only resolve imports to qll files, and not e.g. dbschemes
1 parent a652892 commit 1b9793d

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

ql/src/codeql_ql/ast/internal/Module.qll

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ private predicate resolveQualifiedName(Import imp, ContainerOrModule m, int i) {
139139
}
140140

141141
private predicate resolveSelectionName(Import imp, ContainerOrModule m, int i) {
142+
(m.(File_).getFile().getExtension() = "qll" or not m instanceof File_) and
142143
exists(int last |
143144
resolveQualifiedName(imp, m, last) and
144145
last = count(int j | exists(imp.getQualifiedName(j))) - 1
@@ -281,7 +282,11 @@ module ModConsistency {
281282
query predicate multipleResolve(Import imp, int c, ContainerOrModule m) {
282283
c = strictcount(ContainerOrModule m0 | resolve(imp, m0)) and
283284
c > 1 and
284-
resolve(imp, m)
285+
resolve(imp, m) and
286+
not imp.getLocation()
287+
.getFile()
288+
.getAbsolutePath()
289+
.regexpMatch(".*/(test|examples|ql-training|recorded-call-graph-metrics)/.*")
285290
}
286291

287292
query predicate multipleResolveModuleExpr(ModuleExpr me, int c, ContainerOrModule m) {

0 commit comments

Comments
 (0)