summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsmatz <smatz@openttd.org>2011-01-14 22:23:09 +0000
committersmatz <smatz@openttd.org>2011-01-14 22:23:09 +0000
commit804542b3f37c62debf9ee03d48cf8ccaf9e2a569 (patch)
tree37bfe7b086ce36891bcd9b42dd16dcdd922cf4f1
parent6b86ee9888d177c214a079a1c5d88b680458fff4 (diff)
downloadopenttd-804542b3f37c62debf9ee03d48cf8ccaf9e2a569.tar.xz
(svn r21798) -Fix: loading a TTO savegame failed after loading a TTDP savegame with vehicle multiplier bigger than 1
-rw-r--r--src/saveload/oldloader_sl.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/saveload/oldloader_sl.cpp b/src/saveload/oldloader_sl.cpp
index f5c3bb144..83630d956 100644
--- a/src/saveload/oldloader_sl.cpp
+++ b/src/saveload/oldloader_sl.cpp
@@ -34,9 +34,9 @@
#include "../table/engines.h"
#include "../table/townname.h"
-static bool _read_ttdpatch_flags;
+static bool _read_ttdpatch_flags;
-static uint8 *_old_map3;
+static uint8 *_old_map3;
void FixOldMapArray()
{
@@ -491,15 +491,16 @@ static uint16 _old_extra_chunk_nums;
static void ReadTTDPatchFlags()
{
- if (_read_ttdpatch_flags) return;
-
- _read_ttdpatch_flags = true;
-
if (_savegame_type == SGT_TTO) {
_old_vehicle_multiplier = 1;
+ _bump_assert_value = 0;
return;
}
+ if (_read_ttdpatch_flags) return;
+
+ _read_ttdpatch_flags = true;
+
/* TTDPatch misuses _old_map3 for flags.. read them! */
_old_vehicle_multiplier = _old_map3[0];
/* Somehow.... there was an error in some savegames, so 0 becomes 1