From f41be0b25ac90f2e2fca33e8a21038b7fa1a8bbd Mon Sep 17 00:00:00 2001 From: celestar Date: Sat, 19 Mar 2005 22:45:59 +0000 Subject: [PATCH] (svn r2030) -Fix: Save _cur_town_ctr with all its bits to prevent desyncs --- misc.c | 8 ++------ saveload.c | 2 +- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/misc.c b/misc.c index ba472e1e9b..60c9045530 100644 --- a/misc.c +++ b/misc.c @@ -772,12 +772,8 @@ static const SaveLoadGlobVarList _date_desc[] = { {&_station_tick_ctr, SLE_UINT16, 0, 255}, {&_random_seeds[0][0], SLE_UINT32, 0, 255}, {&_random_seeds[0][1], SLE_UINT32, 0, 255}, - /* XXX: We save only a portion of the _cur_town_ctr, this should be - * fixed in the next revision bump. It does not hurt so much since - * it just gives a small single-time penalty to the towns with higher - * IDs at the load time. _cur_town_ctr is zeroed in InitializeTowns() - * so the higher octets do not interfere at this time. */ - {&_cur_town_ctr, SLE_UINT8, 0, 255}, + {&_cur_town_ctr, SLE_FILE_U8 | SLE_VAR_U32, 0, 9}, + {&_cur_town_ctr, SLE_UINT32, 10, 255}, {&_cur_player_tick_index, SLE_FILE_U8 | SLE_VAR_UINT, 0, 255}, {&_next_competitor_start, SLE_FILE_U16 | SLE_VAR_UINT, 0, 255}, {&_trees_tick_ctr, SLE_UINT8, 0, 255}, diff --git a/saveload.c b/saveload.c index f5efb28c40..425198c88f 100644 --- a/saveload.c +++ b/saveload.c @@ -8,7 +8,7 @@ #include "saveload.h" enum { - SAVEGAME_MAJOR_VERSION = 9, + SAVEGAME_MAJOR_VERSION = 10, SAVEGAME_MINOR_VERSION = 0, SAVEGAME_LOADABLE_VERSION = (SAVEGAME_MAJOR_VERSION << 8) + SAVEGAME_MINOR_VERSION