--- a/src/train_cmd.cpp Tue Dec 11 17:44:55 2007 +0000
+++ b/src/train_cmd.cpp Tue Dec 11 19:09:36 2007 +0000
@@ -3240,8 +3240,9 @@
return false;
}
if ((ts &= (ts >> 16)) == 0) {
- /* make a rail/road crossing red */
- if (IsLevelCrossingTile(tile)) {
+ /* make a rail/road crossing red
+ * do not make crossing red behind depot the train is entering */
+ if (IsLevelCrossingTile(tile) && (GetRailTileType(v->tile) != RAIL_TILE_DEPOT || GetRailDepotDirection(v->tile) == dir)) {
if (!IsCrossingBarred(tile)) {
BarCrossing(tile);
SndPlayVehicleFx(SND_0E_LEVEL_CROSSING, v);