diff options
-rw-r--r-- | src/town_cmd.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index abfa18106..729769212 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -1847,7 +1847,10 @@ static Town *CreateRandomTown(uint attempts, uint32 townnameparts, TownSize size /* if the population is still 0 at the point, then the * placement is so bad it couldn't grow at all */ if (t->cache.population > 0) return t; + + Backup<CompanyByte> cur_company(_current_company, OWNER_TOWN, FILE_LINE); CommandCost rc = DoCommand(t->xy, t->index, 0, DC_EXEC, CMD_DELETE_TOWN); + cur_company.Restore(); assert(rc.Succeeded()); /* We already know that we can allocate a single town when |