changeset 8209:bc67ef5976e3 draft

(svn r11772) -Change: add some extra checking in the hope to find the cause of FS#1335
author glx <glx@openttd.org>
date Mon, 07 Jan 2008 00:43:03 +0000
parents ddc34919158f
children 2191f47ab047
files src/date.cpp src/stdafx.h
diffstat 2 files changed, 13 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- 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<TownID, uint32> 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);
--- 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