diff --git a/src/saveload/gamelog_sl.cpp b/src/saveload/gamelog_sl.cpp --- a/src/saveload/gamelog_sl.cpp +++ b/src/saveload/gamelog_sl.cpp @@ -11,12 +11,15 @@ #include "saveload.h" #include "compat/gamelog_sl_compat.h" +#include "extended_ver_sl.h" #include "../gamelog_internal.h" #include "../fios.h" #include "../safeguards.h" +extern bool _sl_is_ext_version; +extern std::string _sl_xv_version_label; class SlGamelogMode : public DefaultSaveLoadHandler { public: @@ -61,6 +64,11 @@ public: { if (lc->ct != GLCT_REVISION) return; SlObject(lc, this->GetLoadDescription()); + // update revision + if (!_sl_is_ext_version) + { + _sl_xv_version_label = lc->revision.text; + } } void LoadCheck(LoggedChange *lc) const override { this->Load(lc); } @@ -398,11 +406,13 @@ struct GLOGChunkHandler : ChunkHandler { void Load() const override { this->LoadCommon(_gamelog_action, _gamelog_actions); + SlXvCheckSpecialSavegameVersionsB(); } void LoadCheck(size_t) const override { this->LoadCommon(_load_check_data.gamelog_action, _load_check_data.gamelog_actions); + SlXvCheckSpecialSavegameVersionsB(); } };