diff -r 6c346455a7e7 -r 093e03dad31f src/tunnelbridge_cmd.cpp --- a/src/tunnelbridge_cmd.cpp Sun Feb 17 20:15:20 2008 +0000 +++ b/src/tunnelbridge_cmd.cpp Sun Feb 17 21:27:44 2008 +0000 @@ -663,10 +663,16 @@ /* read this value before actual removal of bridge */ bool rail = GetTunnelBridgeTransportType(tile) == TRANSPORT_RAIL; Owner owner = GetTileOwner(tile); + uint height = GetBridgeHeight(tile); DoClearSquare(tile); DoClearSquare(endtile); for (TileIndex c = tile + delta; c != endtile; c += delta) { + /* do not let trees appear from 'nowhere' after removing bridge */ + if (IsNormalRoadTile(c) && GetRoadside(c) == ROADSIDE_TREES) { + uint minz = GetTileMaxZ(c) + 3 * TILE_HEIGHT; + if (height < minz) SetRoadside(c, ROADSIDE_PAVED); + } ClearBridgeMiddle(c); MarkTileDirtyByTile(c); }