Merge pull request #10007 from aschackmull/dataflow/source-node-identity

Dataflow: Fix identification of source PathNodes in the presence of source-to-source flow
This commit is contained in:
Anders Schack-Mulligen
2022-08-15 10:39:17 +02:00
committed by GitHub
31 changed files with 31 additions and 31 deletions

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {

View File

@@ -3061,7 +3061,7 @@ private class PathNodeMid extends PathNodeImpl, TPathNodeMid {
else cc instanceof CallContextAny else cc instanceof CallContextAny
) and ) and
sc instanceof SummaryCtxNone and sc instanceof SummaryCtxNone and
ap instanceof AccessPathNil ap = TAccessPathNil(node.getDataFlowType())
} }
predicate isAtSink() { predicate isAtSink() {