Skip to content

Commit a74c265

Browse files
flomonsteryounesschrifi
authored andcommitted
core: prevents path from taking the same track section twice
This check was already there but not for opposite direction.
1 parent 8382bd1 commit a74c265

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

core/src/main/kotlin/fr/sncf/osrd/api/api_v2/pathfinding/PathfindingBlocksEndpointV2.kt

+3-4
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import fr.sncf.osrd.api.api_v2.TrackLocation
77
import fr.sncf.osrd.api.pathfinding.constraints.*
88
import fr.sncf.osrd.graph.*
99
import fr.sncf.osrd.graph.Pathfinding.EdgeLocation
10-
import fr.sncf.osrd.railjson.schema.common.graph.EdgeDirection
1110
import fr.sncf.osrd.railjson.schema.rollingstock.RJSLoadingGaugeType
1211
import fr.sncf.osrd.reporting.exceptions.ErrorType
1312
import fr.sncf.osrd.reporting.exceptions.OSRDError
@@ -308,9 +307,9 @@ fun validatePathfindingResponse(
308307
}
309308
}
310309

311-
val dirTracks = HashSet<Pair<String, EdgeDirection>>()
312-
for (track in res.trackSectionRanges) dirTracks.add(Pair(track.trackSection, track.direction))
313-
if (dirTracks.size != res.trackSectionRanges.size)
310+
val trackSet = HashSet<String>()
311+
for (track in res.trackSectionRanges) trackSet.add(track.trackSection)
312+
if (trackSet.size != res.trackSectionRanges.size)
314313
throw OSRDError(ErrorType.PathWithRepeatedTracks)
315314

316315
if (res.pathItemPositions.size != req.pathItems.size)

0 commit comments

Comments
 (0)