# HG changeset patch # User michi_cc # Date 1225647748 0 # Node ID 57bba78128d2758d353521aa31f7336fafd36872 # Parent 3c14d0ea0ef573b2e54323ae037888923b79df17 (svn r14558) -Fix (r13957): Converting the track type of a tunnel/bridge could cause trains to get stuck. diff -r 3c14d0ea0ef5 -r 57bba78128d2 src/rail_cmd.cpp --- a/src/rail_cmd.cpp Sun Nov 02 11:41:13 2008 +0000 +++ b/src/rail_cmd.cpp Sun Nov 02 17:42:28 2008 +0000 @@ -1393,7 +1393,8 @@ Track track = DiagDirToDiagTrack(GetTunnelBridgeDirection(tile)); if (GetTunnelBridgeReservation(tile)) { 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); *vehicles_affected.Append() = v; }