(svn r23459) -Fix: don't crash trying to draw airport tiles when the airport grf is missing

This commit is contained in:
yexo 2011-12-09 17:14:03 +00:00
parent 2b1a380902
commit b8ee5c018d
1 changed files with 3 additions and 2 deletions

View File

@ -2613,8 +2613,9 @@ static void DrawTile_Station(TileInfo *ti)
total_offset = 0;
}
StationGfx gfx = GetStationGfx(ti->tile);
if (IsAirport(ti->tile)) {
StationGfx gfx = GetAirportGfx(ti->tile);
gfx = GetAirportGfx(ti->tile);
if (gfx >= NEW_AIRPORTTILE_OFFSET) {
const AirportTileSpec *ats = AirportTileSpec::Get(gfx);
if (ats->grf_prop.spritegroup[0] != NULL && DrawNewAirportTile(ti, Station::GetByTile(ti->tile), gfx, ats)) {
@ -2654,7 +2655,7 @@ static void DrawTile_Station(TileInfo *ti)
palette = PALETTE_TO_GREY;
}
if (layout == NULL && (t == NULL || t->seq == NULL)) t = GetStationTileLayout(GetStationType(ti->tile), GetStationGfx(ti->tile));
if (layout == NULL && (t == NULL || t->seq == NULL)) t = GetStationTileLayout(GetStationType(ti->tile), gfx);
/* don't show foundation for docks */
if (ti->tileh != SLOPE_FLAT && !IsDock(ti->tile)) {