diff --git a/saveload.c b/saveload.c --- a/saveload.c +++ b/saveload.c @@ -751,7 +751,7 @@ void SlObject(void *object, const SaveLo } for (; sld->cmd != SL_END; sld++) { - void *ptr = (byte*)object + (ptrdiff_t)sld->address; + void *ptr = GetVariableAddress(object, sld); SlObjectMember(ptr, sld); } }