@@ -62,6 +62,8 @@ protocol UISceneDelegate {
6262 func scene( _: UIScene , openURLContexts: Set < UIOpenURLContext > )
6363}
6464
65+ func sink( arg: Any ) { }
66+
6567// --- tests ---
6668
6769class AppDelegate : UIApplicationDelegate {
@@ -92,35 +94,35 @@ class SceneDelegate : UISceneDelegate {
9294 func scene( _: UIScene , willConnectTo: UISceneSession , options: UIScene . ConnectionOptions ) { // $ source=remote
9395 for userActivity in options. userActivities {
9496 let x = userActivity. webpageURL
95- x // $ MISSING: tainted
97+ sink ( arg : x ) // $ MISSING: tainted
9698 let y = userActivity. referrerURL
97- y // $ MISSING: tainted
99+ sink ( arg : y ) // $ MISSING: tainted
98100 }
99101
100102 for urlContext in options. urlContexts {
101103 let z = urlContext. url
102- z // $ MISSING: tainted
104+ sink ( arg : z ) // $ MISSING: tainted
103105 }
104106 }
105107
106108 func scene( _: UIScene , continue: NSUserActivity ) { // $ source=remote
107109 let x = `continue`. webpageURL
108- x // $ tainted
110+ sink ( arg : x ) // $ tainted
109111 let y = `continue`. referrerURL
110- y // $ tainted
112+ sink ( arg : y ) // $ tainted
111113 }
112114
113115 func scene( _: UIScene , didUpdate: NSUserActivity ) { // $ source=remote
114116 let x = didUpdate. webpageURL
115- x // $ tainted
117+ sink ( arg : x ) // $ tainted
116118 let y = didUpdate. referrerURL
117- y // $ tainted
119+ sink ( arg : y ) // $ tainted
118120 }
119121
120122 func scene( _: UIScene , openURLContexts: Set < UIOpenURLContext > ) { // $ source=remote
121123 for openURLContext in openURLContexts {
122124 let x = openURLContext. url
123- x // $ MISSING: tainted
125+ sink ( arg : x ) // $ MISSING: tainted
124126 }
125127 }
126128}
@@ -131,35 +133,35 @@ extension Extended : UISceneDelegate {
131133 func scene( _: UIScene , willConnectTo: UISceneSession , options: UIScene . ConnectionOptions ) { // $ source=remote
132134 for userActivity in options. userActivities {
133135 let x = userActivity. webpageURL
134- x // $ MISSING: tainted
136+ sink ( arg : x ) // $ MISSING: tainted
135137 let y = userActivity. referrerURL
136- y // $ MISSING: tainted
138+ sink ( arg : y ) // $ MISSING: tainted
137139 }
138140
139141 for urlContext in options. urlContexts {
140142 let z = urlContext. url
141- z // $ MISSING: tainted
143+ sink ( arg : z ) // $ MISSING: tainted
142144 }
143145 }
144146
145147 func scene( _: UIScene , continue: NSUserActivity ) { // $ source=remote
146148 let x = `continue`. webpageURL
147- x // $ tainted
149+ sink ( arg : x ) // $ tainted
148150 let y = `continue`. referrerURL
149- y // $ tainted
151+ sink ( arg : y ) // $ tainted
150152 }
151153
152154 func scene( _: UIScene , didUpdate: NSUserActivity ) { // $ source=remote
153155 let x = didUpdate. webpageURL
154- x // $ tainted
156+ sink ( arg : x ) // $ tainted
155157 let y = didUpdate. referrerURL
156- y // $ tainted
158+ sink ( arg : y ) // $ tainted
157159 }
158160
159161 func scene( _: UIScene , openURLContexts: Set < UIOpenURLContext > ) { // $ source=remote
160162 for openURLContext in openURLContexts {
161163 let x = openURLContext. url
162- x // $ MISSING: tainted
164+ sink ( arg : x ) // $ MISSING: tainted
163165 }
164166 }
165167}
0 commit comments