@@ -62,6 +62,8 @@ protocol UISceneDelegate {
62
62
func scene( _: UIScene , openURLContexts: Set < UIOpenURLContext > )
63
63
}
64
64
65
+ func sink( arg: Any ) { }
66
+
65
67
// --- tests ---
66
68
67
69
class AppDelegate : UIApplicationDelegate {
@@ -92,35 +94,35 @@ class SceneDelegate : UISceneDelegate {
92
94
func scene( _: UIScene , willConnectTo: UISceneSession , options: UIScene . ConnectionOptions ) { // $ source=remote
93
95
for userActivity in options. userActivities {
94
96
let x = userActivity. webpageURL
95
- x // $ MISSING: tainted
97
+ sink ( arg : x ) // $ MISSING: tainted
96
98
let y = userActivity. referrerURL
97
- y // $ MISSING: tainted
99
+ sink ( arg : y ) // $ MISSING: tainted
98
100
}
99
101
100
102
for urlContext in options. urlContexts {
101
103
let z = urlContext. url
102
- z // $ MISSING: tainted
104
+ sink ( arg : z ) // $ MISSING: tainted
103
105
}
104
106
}
105
107
106
108
func scene( _: UIScene , continue: NSUserActivity ) { // $ source=remote
107
109
let x = `continue`. webpageURL
108
- x // $ tainted
110
+ sink ( arg : x ) // $ tainted
109
111
let y = `continue`. referrerURL
110
- y // $ tainted
112
+ sink ( arg : y ) // $ tainted
111
113
}
112
114
113
115
func scene( _: UIScene , didUpdate: NSUserActivity ) { // $ source=remote
114
116
let x = didUpdate. webpageURL
115
- x // $ tainted
117
+ sink ( arg : x ) // $ tainted
116
118
let y = didUpdate. referrerURL
117
- y // $ tainted
119
+ sink ( arg : y ) // $ tainted
118
120
}
119
121
120
122
func scene( _: UIScene , openURLContexts: Set < UIOpenURLContext > ) { // $ source=remote
121
123
for openURLContext in openURLContexts {
122
124
let x = openURLContext. url
123
- x // $ MISSING: tainted
125
+ sink ( arg : x ) // $ MISSING: tainted
124
126
}
125
127
}
126
128
}
@@ -131,35 +133,35 @@ extension Extended : UISceneDelegate {
131
133
func scene( _: UIScene , willConnectTo: UISceneSession , options: UIScene . ConnectionOptions ) { // $ source=remote
132
134
for userActivity in options. userActivities {
133
135
let x = userActivity. webpageURL
134
- x // $ MISSING: tainted
136
+ sink ( arg : x ) // $ MISSING: tainted
135
137
let y = userActivity. referrerURL
136
- y // $ MISSING: tainted
138
+ sink ( arg : y ) // $ MISSING: tainted
137
139
}
138
140
139
141
for urlContext in options. urlContexts {
140
142
let z = urlContext. url
141
- z // $ MISSING: tainted
143
+ sink ( arg : z ) // $ MISSING: tainted
142
144
}
143
145
}
144
146
145
147
func scene( _: UIScene , continue: NSUserActivity ) { // $ source=remote
146
148
let x = `continue`. webpageURL
147
- x // $ tainted
149
+ sink ( arg : x ) // $ tainted
148
150
let y = `continue`. referrerURL
149
- y // $ tainted
151
+ sink ( arg : y ) // $ tainted
150
152
}
151
153
152
154
func scene( _: UIScene , didUpdate: NSUserActivity ) { // $ source=remote
153
155
let x = didUpdate. webpageURL
154
- x // $ tainted
156
+ sink ( arg : x ) // $ tainted
155
157
let y = didUpdate. referrerURL
156
- y // $ tainted
158
+ sink ( arg : y ) // $ tainted
157
159
}
158
160
159
161
func scene( _: UIScene , openURLContexts: Set < UIOpenURLContext > ) { // $ source=remote
160
162
for openURLContext in openURLContexts {
161
163
let x = openURLContext. url
162
- x // $ MISSING: tainted
164
+ sink ( arg : x ) // $ MISSING: tainted
163
165
}
164
166
}
165
167
}
0 commit comments