@@ -195,13 +195,16 @@ private predicate matchingOpenCloseComponentCalls(
195
195
openCall .getEnclosingCallable ( ) = enclosing and
196
196
closeCall .getTarget ( ) instanceof MicrosoftAspNetCoreComponentsCloseComponentMethod and
197
197
closeCall .getEnclosingCallable ( ) = enclosing and
198
- closeCall .getParent ( ) .getParent ( ) = openCall .getParent ( ) .getParent ( ) and
199
- openCall .getParent ( ) .getIndex ( ) = openCallIndex and
200
- closeCallIndex =
201
- min ( int closeCallIndex0 |
202
- closeCall .getParent ( ) .getIndex ( ) = closeCallIndex0 and
203
- closeCallIndex0 > openCallIndex
204
- )
198
+ exists ( BlockStmt block |
199
+ block = closeCall .getParent ( ) .getParent ( ) and
200
+ block = openCall .getParent ( ) .getParent ( ) and
201
+ block .getChildStmt ( openCallIndex ) = openCall .getParent ( ) and
202
+ closeCallIndex =
203
+ min ( int closeCallIndex0 |
204
+ block .getChildStmt ( closeCallIndex0 ) = closeCall .getParent ( ) and
205
+ closeCallIndex0 > openCallIndex
206
+ )
207
+ )
205
208
}
206
209
207
210
private module JumpNodes {
@@ -223,14 +226,17 @@ private module JumpNodes {
223
226
exists ( NameOfExpr ne | ne = this .getArgument ( 1 ) | result .getAnAccess ( ) = ne .getAccess ( ) )
224
227
or
225
228
exists (
226
- string propertyName , MethodCall openComponent , int i , MethodCall closeComponent , int j
229
+ string propertyName , MethodCall openComponent , BlockStmt block , int openIdx , int closeIdx ,
230
+ int thisIdx
227
231
|
228
232
propertyName = this .getArgument ( 1 ) .( StringLiteral ) .getValue ( ) and
229
233
result .hasName ( propertyName ) and
230
- matchingOpenCloseComponentCalls ( openComponent , i , closeComponent , j ,
234
+ matchingOpenCloseComponentCalls ( openComponent , openIdx , _ , closeIdx ,
231
235
this .getEnclosingCallable ( ) , result .getDeclaringType ( ) ) and
232
- this .getParent ( ) .getParent ( ) = openComponent .getParent ( ) .getParent ( ) and
233
- this .getParent ( ) .getIndex ( ) in [ i + 1 .. j - 1 ]
236
+ block = this .getParent ( ) .getParent ( ) and
237
+ block = openComponent .getParent ( ) .getParent ( ) and
238
+ block .getChildStmt ( thisIdx ) = this .getParent ( ) and
239
+ thisIdx in [ openIdx + 1 .. closeIdx - 1 ]
234
240
)
235
241
)
236
242
}
0 commit comments