Skip to content

Commit a3fb54c

Browse files
authored
Merge pull request #10007 from aschackmull/dataflow/source-node-identity
Dataflow: Fix identification of source PathNodes in the presence of source-to-source flow
2 parents 1d56330 + abad133 commit a3fb54c

31 files changed

+31
-31
lines changed

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl2.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl3.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImpl4.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

cpp/ql/lib/semmle/code/cpp/dataflow/internal/DataFlowImplLocal.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowImpl.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowImpl2.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowImpl3.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

cpp/ql/lib/semmle/code/cpp/ir/dataflow/internal/DataFlowImpl4.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

csharp/ql/lib/semmle/code/csharp/dataflow/internal/DataFlowImpl.qll

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
30613061
else cc instanceof CallContextAny
30623062
) and
30633063
sc instanceof SummaryCtxNone and
3064-
ap instanceof AccessPathNil
3064+
ap = TAccessPathNil(node.getDataFlowType())
30653065
}
30663066

30673067
predicate isAtSink() {

0 commit comments

Comments
 (0)