(svn r12255) [NoAI] -Fix: ensure AITileList_Industry* only operates on valid tiles (Morloth)
--- a/src/ai/api/ai_tilelist.cpp Mon Feb 25 16:10:13 2008 +0000
+++ b/src/ai/api/ai_tilelist.cpp Mon Feb 25 16:14:48 2008 +0000
@@ -88,6 +88,7 @@
if (!_patches.modified_catchment) radius = CA_UNMODIFIED;
BEGIN_TILE_LOOP(cur_tile, i->width + radius * 2, i->height + radius * 2, i->xy - ::TileDiffXY(radius, radius)) {
+ if (!::IsValidTile(cur_tile)) continue;
/* Exclude all tiles that belong to this industry */
if (::IsTileType(cur_tile, MP_INDUSTRY) && ::GetIndustryIndex(cur_tile) == industry_id) continue;
@@ -126,6 +127,7 @@
if (!_patches.modified_catchment) radius = CA_UNMODIFIED;
BEGIN_TILE_LOOP(cur_tile, i->width + radius * 2, i->height + radius * 2, i->xy - ::TileDiffXY(radius, radius)) {
+ if (!::IsValidTile(cur_tile)) continue;
/* Exclude all tiles that belong to this industry */
if (::IsTileType(cur_tile, MP_INDUSTRY) && ::GetIndustryIndex(cur_tile) == industry_id) continue;
this->AddTile(cur_tile);