1
0
Fork 0

(svn r14305) -Fix [FS#2294] (r5033): [YAPF] Only reserve road slots for multistop when they are really reachable.

release/0.7
frosch 2008-09-12 23:23:41 +00:00
parent 3236b3d10e
commit 1647597943
1 changed files with 5 additions and 4 deletions

View File

@ -322,14 +322,15 @@ public:
TrackdirBits dst_td_bits = TrackStatusToTrackdirBits(GetTileTrackStatus(dst_tile, TRANSPORT_ROAD, v->u.road.compatible_roadtypes));
Yapf().SetDestination(dst_tile, dst_td_bits);
// find the best path
Yapf().FindPath(v);
// if path not found - return distance = UINT_MAX
uint dist = UINT_MAX;
// find the best path
if (!Yapf().FindPath(v)) return dist;
Node *pNode = Yapf().GetBestNode();
if (pNode != NULL) {
// path was found or at least suggested
// path was found
// get the path cost estimate
dist = pNode->GetCostEstimate();
}