# HG changeset patch # Parent 4a3f62655fd27f7d49233fead771e46d5898c0b7 -Fix: when loading savegames which did not have a certain default, it reverted to your current setting, instead of the original default; this can change the behavoir of an old savegame drasticly, and is unwanted diff --git a/src/settings.cpp b/src/settings.cpp --- a/src/settings.cpp +++ b/src/settings.cpp @@ -2012,7 +2012,11 @@ const SaveLoad *sld = &osd->save; void *ptr = GetVariableAddress(object, sld); - if (!SlObjectMember(ptr, sld)) continue; + if (!SlObjectMember(ptr, sld)) { + if ((osd->desc.flags & (SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC)) != 0) continue; + Write_ValidateSetting(ptr, osd, ReadValue(osd->desc.def, sld->conv)); + continue; + } if (IsNumericType(sld->conv)) Write_ValidateSetting(ptr, osd, ReadValue(ptr, sld->conv)); } }