From 384e870be2d13bc9465a740ed694bb84d42246de Mon Sep 17 00:00:00 2001 From: alberth Date: Sun, 7 Mar 2010 12:20:17 +0000 Subject: (svn r19362) -Fix [FS#3667] (r19270): Failure to prospect an industry should not cause a crash. --- src/industry_cmd.cpp | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/src/industry_cmd.cpp b/src/industry_cmd.cpp index 66686ee9f..0c963e96a 100644 --- a/src/industry_cmd.cpp +++ b/src/industry_cmd.cpp @@ -1824,19 +1824,17 @@ CommandCost CmdBuildIndustry(TileIndex tile, DoCommandFlag flags, uint32 p1, uin if (ret.Failed()) return ret; } - if (flags & DC_EXEC) { - assert(ind != NULL); - if (_game_mode != GM_EDITOR) { - SetDParam(0, indspec->name); - if (indspec->new_industry_text > STR_LAST_STRINGID) { - SetDParam(1, STR_TOWN_NAME); - SetDParam(2, ind->town->index); - } else { - SetDParam(1, ind->town->index); - } - AddIndustryNewsItem(indspec->new_industry_text, NS_INDUSTRY_OPEN, ind->index); - AI::BroadcastNewEvent(new AIEventIndustryOpen(ind->index)); + if ((flags & DC_EXEC) && ind != NULL && _game_mode != GM_EDITOR) { + /* Created a new industry in-game, advertise the event. */ + SetDParam(0, indspec->name); + if (indspec->new_industry_text > STR_LAST_STRINGID) { + SetDParam(1, STR_TOWN_NAME); + SetDParam(2, ind->town->index); + } else { + SetDParam(1, ind->town->index); } + AddIndustryNewsItem(indspec->new_industry_text, NS_INDUSTRY_OPEN, ind->index); + AI::BroadcastNewEvent(new AIEventIndustryOpen(ind->index)); } return CommandCost(EXPENSES_OTHER, indspec->GetConstructionCost()); -- cgit v1.2.3-54-g00ecf