summaryrefslogtreecommitdiff
path: root/src/saveload/company_sl.cpp
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2011-08-12 18:36:47 +0000
committerrubidium <rubidium@openttd.org>2011-08-12 18:36:47 +0000
commit81074e0ca2b8c7fa470db5b657998ac614a810de (patch)
tree721f028bcea87ff250e6a8489890a8055dd8dbdc /src/saveload/company_sl.cpp
parentc8f19a608da349bdb22e286054daa08d049baf84 (diff)
downloadopenttd-81074e0ca2b8c7fa470db5b657998ac614a810de.tar.xz
(svn r22737) -Fix [FS#4717]: some corrupted savegames could crash OpenTTD instead of showing the "savegame corrupted" message
Diffstat (limited to 'src/saveload/company_sl.cpp')
-rw-r--r--src/saveload/company_sl.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/saveload/company_sl.cpp b/src/saveload/company_sl.cpp
index f99e104f2..2684a0655 100644
--- a/src/saveload/company_sl.cpp
+++ b/src/saveload/company_sl.cpp
@@ -283,6 +283,7 @@ static void SaveLoad_PLYR_common(Company *c, CompanyProperties *cprops)
SlObject(&cprops->cur_economy, _company_economy_desc);
/* Write old economy entries. */
+ if (cprops->num_valid_stat_ent > lengthof(cprops->old_economy)) SlErrorCorrupt("Too many old economy entries");
for (i = 0; i < cprops->num_valid_stat_ent; i++) {
SlObject(&cprops->old_economy[i], _company_economy_desc);
}