mirror of https://github.com/OpenTTD/OpenTTD
(svn r14558) -Fix (r13957): Converting the track type of a tunnel/bridge could cause trains to get stuck.
parent
6d94be75e9
commit
f649496caa
|
@ -1393,7 +1393,8 @@ CommandCost CmdConvertRail(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
|
||||||
Track track = DiagDirToDiagTrack(GetTunnelBridgeDirection(tile));
|
Track track = DiagDirToDiagTrack(GetTunnelBridgeDirection(tile));
|
||||||
if (GetTunnelBridgeReservation(tile)) {
|
if (GetTunnelBridgeReservation(tile)) {
|
||||||
Vehicle *v = GetTrainForReservation(tile, track);
|
Vehicle *v = GetTrainForReservation(tile, track);
|
||||||
if (v != NULL) {
|
if (v != NULL && !HasPowerOnRail(v->u.rail.railtype, totype)) {
|
||||||
|
/* No power on new rail type, reroute. */
|
||||||
FreeTrainTrackReservation(v);
|
FreeTrainTrackReservation(v);
|
||||||
*vehicles_affected.Append() = v;
|
*vehicles_affected.Append() = v;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue