Skip to content

Commit dbae8d6

Browse files
committed
Data flow: add only_bind_out to 'next'
1 parent b6c5288 commit dbae8d6

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

shared/dataflow/codeql/dataflow/internal/DataFlowImpl.qll

+6-2
Original file line numberDiff line numberDiff line change
@@ -2704,7 +2704,9 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
27042704
private predicate localFlowExit(NodeEx node, FlowState state, Ap ap) {
27052705
revFlow(node, pragma[only_bind_into](state), pragma[only_bind_into](ap)) and
27062706
(
2707-
exists(NodeEx next | revFlow(next, pragma[only_bind_into](state), ap) |
2707+
exists(NodeEx next |
2708+
revFlow(pragma[only_bind_out](next), pragma[only_bind_into](state), ap)
2709+
|
27082710
jumpStepEx(node, next)
27092711
or
27102712
additionalJumpStep(node, next, _) and
@@ -2715,7 +2717,9 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
27152717
callEdgeReturn(_, _, node, _, next, _, ap)
27162718
)
27172719
or
2718-
exists(NodeEx next | revFlow(next, pragma[only_bind_into](state), _) |
2720+
exists(NodeEx next |
2721+
revFlow(pragma[only_bind_out](next), pragma[only_bind_into](state), _)
2722+
|
27192723
storeStepCand(node, _, _, next, _, _)
27202724
or
27212725
readStepCand(node, _, next)

0 commit comments

Comments
 (0)