diff --git a/shared/dataflow/codeql/dataflow/DataFlow.qll b/shared/dataflow/codeql/dataflow/DataFlow.qll index 5ef4ffbb36a..97d6ef7a1b0 100644 --- a/shared/dataflow/codeql/dataflow/DataFlow.qll +++ b/shared/dataflow/codeql/dataflow/DataFlow.qll @@ -935,11 +935,15 @@ module DataFlowMake { exists(getAPathNode(node, toString)) } + private predicate edgesProj(InputPathNode node1, InputPathNode node2) { + Graph::edges(node2, node1, _, _) + } + private module Pass1 = - MakeDiscriminatorPass; + MakeDiscriminatorPass; private predicate edgesRev(InputPathNode node1, InputPathNode node2) { - Graph::edges(node2, node1) + Graph::edges(node2, node1, _, _) } private predicate subpathsRev( @@ -1009,8 +1013,9 @@ module DataFlowMake { Graph::nodes(node.getAnOriginalPathNode(), key, val) } - query predicate edges(PathNode node1, PathNode node2) { - Graph::edges(node1.getAnOriginalPathNode(), node2.getAnOriginalPathNode()) + query predicate edges(PathNode node1, PathNode node2, string key, string val) { + // TODO: ensure deduplication preserves key/val sequence? + Graph::edges(node1.getAnOriginalPathNode(), node2.getAnOriginalPathNode(), key, val) } query predicate subpaths(PathNode arg, PathNode par, PathNode ret, PathNode out) {