summaryrefslogtreecommitdiff
path: root/src/saveload/oldloader_sl.cpp
diff options
context:
space:
mode:
authorsmatz <smatz@openttd.org>2009-08-08 20:53:36 +0000
committersmatz <smatz@openttd.org>2009-08-08 20:53:36 +0000
commit13e23141b418214db51e1463bb3696a4e6d87129 (patch)
tree3b092f293fd5fdc1c1dd17120ba874d919824bf0 /src/saveload/oldloader_sl.cpp
parent8d809d5f4c21afbed4bbeb0388d42a9c5718a755 (diff)
downloadopenttd-13e23141b418214db51e1463bb3696a4e6d87129.tar.xz
(svn r17124) -Codechange: store subsidies in a pool (instead of an array)
Diffstat (limited to 'src/saveload/oldloader_sl.cpp')
-rw-r--r--src/saveload/oldloader_sl.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/saveload/oldloader_sl.cpp b/src/saveload/oldloader_sl.cpp
index 14db853bf..8a45d587b 100644
--- a/src/saveload/oldloader_sl.cpp
+++ b/src/saveload/oldloader_sl.cpp
@@ -1477,7 +1477,10 @@ static const OldChunks subsidy_chunk[] = {
static bool LoadOldSubsidy(LoadgameState *ls, int num)
{
- return LoadChunk(ls, &Subsidy::array[num], subsidy_chunk);
+ Subsidy *s = new (num) Subsidy();
+ bool ret = LoadChunk(ls, s, subsidy_chunk);
+ if (s->cargo_type == CT_INVALID) delete s;
+ return ret;
}
static const OldChunks game_difficulty_chunk[] = {