@@ -25,7 +25,6 @@ private class TypeWebViewOrSubclass extends RefType {
25
25
*/
26
26
private class PrivateGetterMethodAccess extends MethodAccess {
27
27
PrivateGetterMethodAccess ( ) {
28
- this instanceof MethodAccess and
29
28
this .getMethod ( ) instanceof GetterMethod and
30
29
this .getMethod ( ) .isPrivate ( )
31
30
}
@@ -34,7 +33,7 @@ private class PrivateGetterMethodAccess extends MethodAccess {
34
33
/** A source for `android.webkit.WebView` objects. */
35
34
class WebViewSource extends DataFlow:: Node {
36
35
WebViewSource ( ) {
37
- this .getType ( ) . ( RefType ) instanceof TypeWebViewOrSubclass and
36
+ this .getType ( ) instanceof TypeWebViewOrSubclass and
38
37
// To reduce duplicate results, we only consider WebView objects from
39
38
// constructor and method calls, or method accesses which are cast to WebView.
40
39
(
@@ -56,16 +55,15 @@ class WebSettingsDisallowContentAccessSink extends DataFlow::Node {
56
55
exists ( MethodAccess ma |
57
56
ma .getQualifier ( ) = this .asExpr ( ) and
58
57
ma .getMethod ( ) instanceof AllowContentAccessMethod and
59
- ma .getArgument ( 0 ) .( BooleanLiteral ) .getBooleanValue ( ) = false
58
+ ma .getArgument ( 0 ) .( CompileTimeConstantExpr ) .getBooleanValue ( ) = false
60
59
)
61
60
}
62
61
}
63
62
64
63
class WebViewDisallowContentAccessConfiguration extends TaintTracking:: Configuration {
65
64
WebViewDisallowContentAccessConfiguration ( ) { this = "WebViewDisallowContentAccessConfiguration" }
66
65
67
- override predicate isSource ( DataFlow:: Node node , DataFlow:: FlowState state ) {
68
- state instanceof DataFlow:: FlowStateEmpty and
66
+ override predicate isSource ( DataFlow:: Node node ) {
69
67
node instanceof WebViewSource
70
68
}
71
69
0 commit comments