File tree Expand file tree Collapse file tree 1 file changed +6
-2
lines changed
shared/dataflow/codeql/dataflow Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -996,8 +996,12 @@ module DataFlowMake<LocationSig Location, InputSig<Location> Lang> {
996
996
predicate discriminatedPathNode ( InputPathNode pathNode ) { discriminatedPathNode ( pathNode , _) }
997
997
}
998
998
999
+ private InputPathNode getUniqPathNode ( Node node , string toString ) {
1000
+ result = unique( InputPathNode pathNode | pathNode = getAPathNode ( node , toString ) )
1001
+ }
1002
+
999
1003
private predicate initialCandidate ( Node node , string toString ) {
1000
- exists ( getAPathNode ( node , toString ) )
1004
+ exists ( getAPathNode ( node , toString ) ) and not exists ( getUniqPathNode ( node , toString ) )
1001
1005
}
1002
1006
1003
1007
private module Pass1 =
@@ -1017,7 +1021,7 @@ module DataFlowMake<LocationSig Location, InputSig<Location> Lang> {
1017
1021
MakeDiscriminatorPass< Pass1:: discriminatedPair / 2 , edgesRev / 4 , subpathsRev / 4 > ;
1018
1022
1019
1023
private newtype TPathNode =
1020
- TPreservedPathNode ( InputPathNode node ) { Pass2:: discriminatedPathNode ( node ) } or
1024
+ TPreservedPathNode ( InputPathNode node ) { Pass2:: discriminatedPathNode ( node ) or node = getUniqPathNode ( _ , _ ) } or
1021
1025
TCollapsedPathNode ( Node node , string toString ) {
1022
1026
initialCandidate ( node , toString ) and
1023
1027
not Pass2:: discriminatedPair ( node , toString )
You can’t perform that action at this time.
0 commit comments