From f44a9a5d5b468496fe92473e3bbd6a556efabf12 Mon Sep 17 00:00:00 2001 From: smatz Date: Wed, 9 Jan 2008 23:00:59 +0000 Subject: (svn r11802) -Fix [FS#716]: do not crash trains when leaving depot to a very long track -Codechange: use dedicated pathfinder for signal updating, resulting in better performance and possible future improvements --- src/tunnelbridge_cmd.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/tunnelbridge_cmd.cpp') diff --git a/src/tunnelbridge_cmd.cpp b/src/tunnelbridge_cmd.cpp index 2b8964e78..26e43e872 100644 --- a/src/tunnelbridge_cmd.cpp +++ b/src/tunnelbridge_cmd.cpp @@ -35,6 +35,7 @@ #include "functions.h" #include "vehicle_func.h" #include "sound_func.h" +#include "signal_func.h" const Bridge orig_bridge[] = { @@ -419,7 +420,7 @@ not_valid_below:; if (flags & DC_EXEC && railtype != INVALID_RAILTYPE) { Track track = AxisToTrack(direction); - SetSignalsOnBothDir(tile_start, track); + UpdateSignalsOnSegment(tile_start, INVALID_DIAGDIR); YapfNotifyTrackLayoutChange(tile_start, track); } @@ -549,7 +550,7 @@ CommandCost CmdBuildTunnel(TileIndex start_tile, uint32 flags, uint32 p1, uint32 if (GB(p1, 9, 1) == TRANSPORT_RAIL) { MakeRailTunnel(start_tile, _current_player, direction, (RailType)GB(p1, 0, 4)); MakeRailTunnel(end_tile, _current_player, ReverseDiagDir(direction), (RailType)GB(p1, 0, 4)); - UpdateSignalsOnSegment(start_tile, direction); + UpdateSignalsOnSegment(start_tile, INVALID_DIAGDIR); YapfNotifyTrackLayoutChange(start_tile, AxisToTrack(DiagDirToAxis(direction))); } else { MakeRoadTunnel(start_tile, _current_player, direction, (RoadTypes)GB(p1, 0, 3)); -- cgit v1.2.3-70-g09d2