mirror of
https://github.com/github/codeql.git
synced 2026-05-05 13:45:19 +02:00
Merge pull request #1707 from asger-semmle/canonical-name-call-graph
Approved by xiemaisi
This commit is contained in:
@@ -114,6 +114,7 @@ test_getAFunctionValue
|
||||
| tst3.js:2:1:2:23 | functio ... n2() {} | tst3.js:2:1:2:23 | functio ... n2() {} |
|
||||
| tst.js:1:1:1:15 | function f() {} | tst.js:1:1:1:15 | function f() {} |
|
||||
| tst.js:2:9:2:21 | function() {} | tst.js:2:9:2:21 | function() {} |
|
||||
| tst.js:3:1:3:1 | h | tst.js:3:5:3:17 | function() {} |
|
||||
| tst.js:3:1:3:17 | h = function() {} | tst.js:3:5:3:17 | function() {} |
|
||||
| tst.js:3:5:3:17 | function() {} | tst.js:3:5:3:17 | function() {} |
|
||||
| tst.js:4:1:4:5 | k = g | tst.js:2:9:2:21 | function() {} |
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
import javascript
|
||||
import semmle.javascript.dataflow.internal.FlowSteps
|
||||
|
||||
from DataFlow::InvokeNode node, int imprecision
|
||||
select node, node.getACallee(imprecision), imprecision
|
||||
from DataFlow::InvokeNode node, Function callee
|
||||
where calls(node, callee)
|
||||
select node, callee, 0
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
| foo.bar | tests/nestedAccess.js:3:14:3:36 | goog.re ... o.bar') |
|
||||
| foo.bar.x | tests/nestedAccess.js:5:1:5:8 | fooBar.x |
|
||||
| foo.bar.x | tests/nestedAccess.js:10:9:10:11 | z.x |
|
||||
| foo.bar.x.y | tests/nestedAccess.js:5:1:5:10 | fooBar.x.y |
|
||||
| foo.bar.x.y.z | tests/nestedAccess.js:5:1:5:12 | fooBar.x.y.z |
|
||||
| goog | tests/es6Module.js:1:1:1:4 | goog |
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
| file://:0:0:0:0 | global access path |
|
||||
| tst.js:1:10:1:11 | fs |
|
||||
| tst.js:1:10:1:11 | fs |
|
||||
| tst.js:1:20:1:23 | 'fs' |
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
| eval.js:1:1:5:1 | functio ... eval`\\n} |
|
||||
| eval.js:3:3:3:6 | eval |
|
||||
| eval.js:3:3:3:16 | eval("x = 23") |
|
||||
| file://:0:0:0:0 | global access path |
|
||||
| sources.js:1:1:1:0 | this |
|
||||
| sources.js:1:1:1:12 | new (x => x) |
|
||||
| sources.js:1:6:1:6 | x |
|
||||
|
||||
@@ -2,6 +2,13 @@ test_ApiObject
|
||||
| tst.js:4:11:4:21 | new myapi() |
|
||||
| tst.js:16:10:16:21 | api.chain1() |
|
||||
| tst.js:16:10:16:30 | api.cha ... hain2() |
|
||||
| tst.js:62:40:62:51 | api.chain1() |
|
||||
| tst.js:62:40:62:60 | api.cha ... hain2() |
|
||||
| tst.js:63:38:63:49 | api.chain1() |
|
||||
| tst.js:63:38:63:58 | api.cha ... hain2() |
|
||||
| tst_conflict.js:3:11:3:21 | new myapi() |
|
||||
| tst_conflict.js:6:38:6:49 | api.chain1() |
|
||||
| tst_conflict.js:6:38:6:58 | api.cha ... hain2() |
|
||||
test_Connection
|
||||
| tst.js:7:15:7:18 | conn |
|
||||
| tst.js:11:5:11:19 | this.connection |
|
||||
@@ -12,6 +19,10 @@ test_Connection
|
||||
| tst.js:48:7:48:21 | getConnection() |
|
||||
| tst.js:54:37:54:51 | getConnection() |
|
||||
| tst.js:57:14:57:48 | config. ... ction') |
|
||||
| tst.js:62:40:62:79 | api.cha ... ction() |
|
||||
| tst.js:63:38:63:77 | api.cha ... ction() |
|
||||
| tst.js:67:14:67:47 | MyAppli ... nection |
|
||||
| tst_conflict.js:6:38:6:77 | api.cha ... ction() |
|
||||
test_DataCallback
|
||||
| tst.js:10:11:10:12 | cb |
|
||||
| tst.js:21:1:23:1 | functio ... ata);\\n} |
|
||||
@@ -22,9 +33,11 @@ test_DataCallback
|
||||
| tst.js:45:19:45:20 | cb |
|
||||
| tst.js:48:32:48:60 | identit ... llback) |
|
||||
| tst.js:58:16:58:22 | x => {} |
|
||||
| tst.js:68:16:70:3 | data => ... a);\\n } |
|
||||
test_DataValue
|
||||
| tst.js:21:18:21:21 | data |
|
||||
| tst.js:25:19:25:22 | data |
|
||||
| tst.js:33:17:33:20 | data |
|
||||
| tst.js:38:10:38:13 | data |
|
||||
| tst.js:58:16:58:16 | x |
|
||||
| tst.js:68:16:68:19 | data |
|
||||
|
||||
@@ -2,6 +2,13 @@ apiObject
|
||||
| tst.js:4:11:4:21 | new myapi() |
|
||||
| tst.js:16:10:16:21 | api.chain1() |
|
||||
| tst.js:16:10:16:30 | api.cha ... hain2() |
|
||||
| tst.js:62:40:62:51 | api.chain1() |
|
||||
| tst.js:62:40:62:60 | api.cha ... hain2() |
|
||||
| tst.js:63:38:63:49 | api.chain1() |
|
||||
| tst.js:63:38:63:58 | api.cha ... hain2() |
|
||||
| tst_conflict.js:3:11:3:21 | new myapi() |
|
||||
| tst_conflict.js:6:38:6:49 | api.chain1() |
|
||||
| tst_conflict.js:6:38:6:58 | api.cha ... hain2() |
|
||||
connection
|
||||
| type tracker with call steps | tst.js:7:15:7:18 | conn |
|
||||
| type tracker with call steps | tst.js:11:5:11:19 | this.connection |
|
||||
@@ -13,6 +20,14 @@ connection
|
||||
| type tracker without call steps | tst.js:48:7:48:21 | getConnection() |
|
||||
| type tracker without call steps | tst.js:54:37:54:51 | getConnection() |
|
||||
| type tracker without call steps | tst.js:57:14:57:48 | config. ... ction') |
|
||||
| type tracker without call steps | tst.js:62:40:62:79 | api.cha ... ction() |
|
||||
| type tracker without call steps | tst.js:63:38:63:77 | api.cha ... ction() |
|
||||
| type tracker without call steps | tst.js:67:14:67:47 | MyAppli ... nection |
|
||||
| type tracker without call steps | tst_conflict.js:6:38:6:77 | api.cha ... ction() |
|
||||
| type tracker without call steps with property MyApplication.namespace.connection | file://:0:0:0:0 | global access path |
|
||||
| type tracker without call steps with property conflict | tst.js:63:3:63:25 | MyAppli ... mespace |
|
||||
| type tracker without call steps with property conflict | tst_conflict.js:6:3:6:25 | MyAppli ... mespace |
|
||||
| type tracker without call steps with property connection | tst.js:62:3:62:25 | MyAppli ... mespace |
|
||||
dataCallback
|
||||
| tst.js:10:11:10:12 | cb |
|
||||
| tst.js:21:1:23:1 | functio ... ata);\\n} |
|
||||
@@ -23,9 +38,11 @@ dataCallback
|
||||
| tst.js:45:19:45:20 | cb |
|
||||
| tst.js:48:32:48:60 | identit ... llback) |
|
||||
| tst.js:58:16:58:22 | x => {} |
|
||||
| tst.js:68:16:70:3 | data => ... a);\\n } |
|
||||
dataValue
|
||||
| tst.js:21:18:21:21 | data |
|
||||
| tst.js:25:19:25:22 | data |
|
||||
| tst.js:33:17:33:20 | data |
|
||||
| tst.js:38:10:38:13 | data |
|
||||
| tst.js:58:16:58:16 | x |
|
||||
| tst.js:68:16:68:19 | data |
|
||||
|
||||
@@ -57,3 +57,20 @@ function getFromConfigFramework() {
|
||||
let conn = config.getConfigValue('connection');
|
||||
conn.getData(x => {});
|
||||
}
|
||||
|
||||
function initConnection() {
|
||||
MyApplication.namespace.connection = api.chain1().chain2().createConnection();
|
||||
MyApplication.namespace.conflict = api.chain1().chain2().createConnection();
|
||||
}
|
||||
|
||||
function useConnection() {
|
||||
let conn = MyApplication.namespace.connection;
|
||||
conn.getData(data => {
|
||||
useData(data);
|
||||
});
|
||||
|
||||
let conflict = MyApplication.namespace.conflict;
|
||||
conflict.getData(data => {
|
||||
useData(data);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
import myapi from "@test/myapi";
|
||||
|
||||
let api = new myapi();
|
||||
|
||||
function initConnection() {
|
||||
MyApplication.namespace.conflict = api.chain1().chain2().createConnection();
|
||||
}
|
||||
Reference in New Issue
Block a user