summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortron <tron@openttd.org>2004-12-18 12:40:34 +0000
committertron <tron@openttd.org>2004-12-18 12:40:34 +0000
commita4e5ed68fd0bd801b259acde9504fb85ca1767af (patch)
tree91b74179860d67a6e0124d708639b0e97d56c8ab
parent376c5adb7ce86c3179dc38151c0ef15ef6f4f723 (diff)
downloadopenttd-a4e5ed68fd0bd801b259acde9504fb85ca1767af.tar.xz
(svn r1150) Fixes:
- Don't crash when building or destroying airport without depots (bugs were latent before r1149) - Delete all hangar windows when destroying an airport, not just the first one (before r1149 none where deleted)
-rw-r--r--station_cmd.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/station_cmd.c b/station_cmd.c
index 9c2f6cf8f..a45235642 100644
--- a/station_cmd.c
+++ b/station_cmd.c
@@ -1651,8 +1651,12 @@ END_TILE_LOOP(tile_cur, w,h,tile)
}
if (flags & DC_EXEC) {
- if (st->airport_type <= AT_INTERNATIONAL)
- DeleteWindowById(WC_VEHICLE_DEPOT, tile + GetAirport(st->airport_type)->airport_depots[0]);
+ const AirportFTAClass *afc = GetAirport(st->airport_type);
+ uint i;
+
+ for (i = 0; i < afc->nof_depots; ++i)
+ DeleteWindowById(WC_VEHICLE_DEPOT,
+ tile + GetAirport(st->airport_type)->airport_depots[i]);
st->airport_tile = 0;
st->facilities &= ~FACIL_AIRPORT;