diff options
Diffstat (limited to 'src/saveload/saveload.cpp')
-rw-r--r-- | src/saveload/saveload.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/saveload/saveload.cpp b/src/saveload/saveload.cpp index 29fcf89da..c325c1ee5 100644 --- a/src/saveload/saveload.cpp +++ b/src/saveload/saveload.cpp @@ -1517,8 +1517,10 @@ size_t SlCalcObjMemberLength(const void *object, const SaveLoad &sld) } } -bool SlObjectMember(void *ptr, const SaveLoad &sld) +static bool SlObjectMember(void *object, const SaveLoad &sld) { + void *ptr = GetVariableAddress(object, sld); + assert(IsVariableSizeRight(sld)); VarType conv = GB(sld.conv, 0, 8); @@ -1604,8 +1606,7 @@ void SlObject(void *object, const SaveLoadTable &slt) } for (auto &sld : slt) { - void *ptr = GetVariableAddress(object, sld); - SlObjectMember(ptr, sld); + SlObjectMember(object, sld); } } |