Skip to content

Commit 9f52f25

Browse files
committed
JS: Treat document as a DOM value
1 parent db0015a commit 9f52f25

2 files changed

Lines changed: 10 additions & 0 deletions

File tree

javascript/ql/lib/semmle/javascript/DOM.qll

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -445,6 +445,8 @@ module DOM {
445445
or
446446
result.hasUnderlyingType(any(string s | s.matches("HTML%Element")))
447447
or
448+
result = documentRef()
449+
or
448450
exists(DataFlow::ClassNode cls |
449451
cls.getASuperClassNode().getALocalSource() =
450452
DataFlow::globalVarRef(any(string s | s.matches("HTML%Element"))) and

javascript/ql/test/library-tests/DOM/Customizations.expected

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,20 +7,28 @@ test_documentRef
77
test_locationRef
88
| customization.js:3:3:3:14 | doc.location |
99
test_domValueRef
10+
| customization.js:2:13:2:31 | customGetDocument() |
11+
| customization.js:3:3:3:14 | doc.location |
1012
| customization.js:4:3:4:20 | doc.getElementById |
1113
| customization.js:4:3:4:28 | doc.get ... 'test') |
1214
| event-handler-receiver.html:4:20:4:19 | this |
15+
| event-handler-receiver.js:1:1:1:8 | document |
1316
| event-handler-receiver.js:1:1:1:23 | documen ... entById |
1417
| event-handler-receiver.js:1:1:1:32 | documen ... my-id') |
1518
| event-handler-receiver.js:1:44:1:43 | this |
1619
| event-handler-receiver.js:2:3:2:17 | this.parentNode |
20+
| event-handler-receiver.js:5:1:5:8 | document |
1721
| event-handler-receiver.js:5:1:5:23 | documen ... entById |
1822
| event-handler-receiver.js:5:1:5:32 | documen ... my-id') |
1923
| event-handler-receiver.js:5:60:5:59 | this |
2024
| event-handler-receiver.js:6:3:6:17 | this.parentNode |
25+
| nameditems.js:1:1:1:8 | document |
2126
| nameditems.js:1:1:1:23 | documen ... entById |
2227
| nameditems.js:1:1:1:30 | documen ... ('foo') |
2328
| nameditems.js:1:1:2:19 | documen ... em('x') |
29+
| querySelectorAll.js:2:5:2:12 | document |
2430
| querySelectorAll.js:2:5:2:29 | documen ... ctorAll |
31+
| querySelectorAll.js:2:5:2:36 | documen ... ('foo') |
32+
| querySelectorAll.js:2:46:2:48 | elm |
2533
| tst.js:49:3:49:8 | window |
2634
| tst.js:50:3:50:8 | window |

0 commit comments

Comments
 (0)