@@ -1144,9 +1144,8 @@ private module Stage2 {
1144
1144
exists ( ArgNodeEx arg , boolean allowsFieldFlow |
1145
1145
fwdFlow ( arg , outercc , argAp , ap , config ) and
1146
1146
flowIntoCall ( call , arg , p , allowsFieldFlow , config ) and
1147
- innercc = getCallContextCall ( call , p .getEnclosingCallable ( ) , outercc )
1148
- |
1149
- ap instanceof ApNil or allowsFieldFlow = true
1147
+ innercc = getCallContextCall ( call , p .getEnclosingCallable ( ) , outercc ) and
1148
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
1150
1149
)
1151
1150
}
1152
1151
@@ -1161,9 +1160,8 @@ private module Stage2 {
1161
1160
fwdFlow ( ret , innercc , argAp , ap , config ) and
1162
1161
flowOutOfCall ( call , ret , out , allowsFieldFlow , config ) and
1163
1162
inner = ret .getEnclosingCallable ( ) and
1164
- ccOut = getCallContextReturn ( inner , call , innercc )
1165
- |
1166
- ap instanceof ApNil or allowsFieldFlow = true
1163
+ ccOut = getCallContextReturn ( inner , call , innercc ) and
1164
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
1167
1165
)
1168
1166
}
1169
1167
@@ -1173,9 +1171,8 @@ private module Stage2 {
1173
1171
) {
1174
1172
exists ( RetNodeEx ret , boolean allowsFieldFlow , CcCall ccc |
1175
1173
fwdFlow ( ret , ccc , apSome ( argAp ) , ap , config ) and
1176
- flowThroughOutOfCall ( call , ccc , ret , out , allowsFieldFlow , config )
1177
- |
1178
- ap instanceof ApNil or allowsFieldFlow = true
1174
+ flowThroughOutOfCall ( call , ccc , ret , out , allowsFieldFlow , config ) and
1175
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
1179
1176
)
1180
1177
}
1181
1178
@@ -1845,9 +1842,8 @@ private module Stage3 {
1845
1842
exists ( ArgNodeEx arg , boolean allowsFieldFlow |
1846
1843
fwdFlow ( arg , outercc , argAp , ap , config ) and
1847
1844
flowIntoCall ( call , arg , p , allowsFieldFlow , config ) and
1848
- innercc = getCallContextCall ( call , p .getEnclosingCallable ( ) , outercc )
1849
- |
1850
- ap instanceof ApNil or allowsFieldFlow = true
1845
+ innercc = getCallContextCall ( call , p .getEnclosingCallable ( ) , outercc ) and
1846
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
1851
1847
)
1852
1848
}
1853
1849
@@ -1862,9 +1858,8 @@ private module Stage3 {
1862
1858
fwdFlow ( ret , innercc , argAp , ap , config ) and
1863
1859
flowOutOfCall ( call , ret , out , allowsFieldFlow , config ) and
1864
1860
inner = ret .getEnclosingCallable ( ) and
1865
- ccOut = getCallContextReturn ( inner , call , innercc )
1866
- |
1867
- ap instanceof ApNil or allowsFieldFlow = true
1861
+ ccOut = getCallContextReturn ( inner , call , innercc ) and
1862
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
1868
1863
)
1869
1864
}
1870
1865
@@ -1874,9 +1869,8 @@ private module Stage3 {
1874
1869
) {
1875
1870
exists ( RetNodeEx ret , boolean allowsFieldFlow , CcCall ccc |
1876
1871
fwdFlow ( ret , ccc , apSome ( argAp ) , ap , config ) and
1877
- flowThroughOutOfCall ( call , ccc , ret , out , allowsFieldFlow , config )
1878
- |
1879
- ap instanceof ApNil or allowsFieldFlow = true
1872
+ flowThroughOutOfCall ( call , ccc , ret , out , allowsFieldFlow , config ) and
1873
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
1880
1874
)
1881
1875
}
1882
1876
@@ -2617,9 +2611,8 @@ private module Stage4 {
2617
2611
exists ( ArgNodeEx arg , boolean allowsFieldFlow |
2618
2612
fwdFlow ( arg , outercc , argAp , ap , config ) and
2619
2613
flowIntoCall ( call , arg , p , allowsFieldFlow , config ) and
2620
- innercc = getCallContextCall ( call , p .getEnclosingCallable ( ) , outercc )
2621
- |
2622
- ap instanceof ApNil or allowsFieldFlow = true
2614
+ innercc = getCallContextCall ( call , p .getEnclosingCallable ( ) , outercc ) and
2615
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
2623
2616
)
2624
2617
}
2625
2618
@@ -2634,9 +2627,8 @@ private module Stage4 {
2634
2627
fwdFlow ( ret , innercc , argAp , ap , config ) and
2635
2628
flowOutOfCall ( call , ret , out , allowsFieldFlow , config ) and
2636
2629
inner = ret .getEnclosingCallable ( ) and
2637
- ccOut = getCallContextReturn ( inner , call , innercc )
2638
- |
2639
- ap instanceof ApNil or allowsFieldFlow = true
2630
+ ccOut = getCallContextReturn ( inner , call , innercc ) and
2631
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
2640
2632
)
2641
2633
}
2642
2634
@@ -2646,9 +2638,8 @@ private module Stage4 {
2646
2638
) {
2647
2639
exists ( RetNodeEx ret , boolean allowsFieldFlow , CcCall ccc |
2648
2640
fwdFlow ( ret , ccc , apSome ( argAp ) , ap , config ) and
2649
- flowThroughOutOfCall ( call , ccc , ret , out , allowsFieldFlow , config )
2650
- |
2651
- ap instanceof ApNil or allowsFieldFlow = true
2641
+ flowThroughOutOfCall ( call , ccc , ret , out , allowsFieldFlow , config ) and
2642
+ if allowsFieldFlow = false then ap instanceof ApNil else any ( )
2652
2643
)
2653
2644
}
2654
2645
0 commit comments