summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2013-05-18 18:59:06 +0000
committerrubidium <rubidium@openttd.org>2013-05-18 18:59:06 +0000
commit1a0c081c18ffca75ba63a0d5505c99fd73b3e8c5 (patch)
tree654c7566de9f6d55acf99b41c5144a6901c444a4
parent3e163928c362dc12688d107da6624d5ca0dbc1a1 (diff)
downloadopenttd-1a0c081c18ffca75ba63a0d5505c99fd73b3e8c5.tar.xz
(svn r25251) -Fix [FS#5540]: when overbuilding a reserved track with a non-track station tile, that tile would remain reserved and eventually trigger a crash upon removal
-rw-r--r--src/station_cmd.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp
index ce3a16e4d..c2b4cf410 100644
--- a/src/station_cmd.cpp
+++ b/src/station_cmd.cpp
@@ -1317,6 +1317,9 @@ CommandCost CmdBuildRailStation(TileIndex tile_org, DoCommandFlag flags, uint32
}
TILE_AREA_LOOP(tile, update_reservation_area) {
+ /* Don't even try to make eye candy parts reserved. */
+ if (IsStationTileBlocked(tile)) continue;
+
DiagDirection dir = AxisToDiagDir(axis);
TileIndexDiff tile_offset = TileOffsByDiagDir(dir);
TileIndex platform_begin = tile;