# HG changeset patch # User glx # Date 1199666583 0 # Node ID bc67ef5976e34ba85bbb4742a22e0c723ae8021d # Parent ddc34919158f00e1d5e7f96071a09c696bb18021 (svn r11772) -Change: add some extra checking in the hope to find the cause of FS#1335 diff --git a/src/date.cpp b/src/date.cpp --- a/src/date.cpp +++ b/src/date.cpp @@ -15,6 +15,7 @@ #include "vehicle_base.h" #ifdef DEBUG_DUMP_COMMANDS #include "saveload.h" +#include "town_map.h" #endif Year _cur_year; @@ -267,6 +268,17 @@ /* yes, call various monthly loops */ if (_game_mode != GM_MENU) { #ifdef DEBUG_DUMP_COMMANDS + std::map town_pop; + for (TileIndex t = 0; t < MapSize(); t++) { + if (GetTileType(t) == MP_HOUSE && IsHouseCompleted(t)) { + uint32 pop = GetHouseSpecs(GetHouseType(t))->population; + town_pop[GetTownIndex(t)] += pop; + } + } + + Town *t; + FOR_ALL_TOWNS(t) assert(t->population == town_pop[t->index]); + char name[MAX_PATH]; snprintf(name, lengthof(name), "dmp_cmds_%d.sav", _date); SaveOrLoad(name, SL_SAVE, AUTOSAVE_DIR); diff --git a/src/stdafx.h b/src/stdafx.h --- a/src/stdafx.h +++ b/src/stdafx.h @@ -4,6 +4,7 @@ #ifndef STDAFX_H #define STDAFX_H +#define DEBUG_DUMP_COMMANDS /* It seems that we need to include stdint.h before anything else * We need INT64_MAX, which for most systems comes from stdint.h. However, MSVC