Mercurial > hg > openttd
changeset 15908:434567b681a8 draft
(svn r20592) -Fix (r2041): no (proper) savegame conversion was done when _date_fract got a new value range
author | rubidium <rubidium@openttd.org> |
---|---|
date | Sun, 22 Aug 2010 09:21:56 +0000 |
parents | 33fed3e36d65 |
children | 5502a60796ad |
files | src/date.cpp src/saveload/afterload.cpp |
diffstat | 2 files changed, 5 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/date.cpp +++ b/src/date.cpp @@ -34,6 +34,8 @@ */ void SetDate(Date date, DateFract fract) { + assert(fract < DAY_TICKS); + YearMonthDay ymd; _date = date;
--- a/src/saveload/afterload.cpp +++ b/src/saveload/afterload.cpp @@ -569,6 +569,9 @@ default: break; } + /* The value of _date_fract got divided, so make sure that old games are converted correctly. */ + if (CheckSavegameVersionOldStyle(11, 1)) _date_fract /= 885; + /* Update current year * must be done before loading sprites as some newgrfs check it */ SetDate(_date, _date_fract);