diff --git a/src/p_mobj.c b/src/p_mobj.c index 5f1bebf74..561c29e4e 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -10521,7 +10521,6 @@ void P_RemoveSavegameMobj(mobj_t *mobj) // free block P_RemoveThinker((thinker_t *)mobj); - R_RemoveMobjInterpolator(mobj); } static CV_PossibleValue_t respawnitemtime_cons_t[] = {{1, "MIN"}, {300, "MAX"}, {0, NULL}}; diff --git a/src/p_saveg.c b/src/p_saveg.c index 51d424759..46090638a 100644 --- a/src/p_saveg.c +++ b/src/p_saveg.c @@ -3817,7 +3817,11 @@ static void P_NetUnArchiveThinkers(void) if (currentthinker->function.acp1 == (actionf_p1)P_MobjThinker) P_RemoveSavegameMobj((mobj_t *)currentthinker); // item isn't saved, don't remove it else + { + (next->prev = currentthinker->prev)->next = next; + R_DestroyLevelInterpolators(currentthinker); Z_Free(currentthinker); + } } }