diff --git a/src/p_saveg.c b/src/p_saveg.c
index e8c6c7a84d0f2654cbfe19d60f9174e30ed7976a..fc8d9d4ee82b9a9b21ccc5316ea6d1521c5a1415 100644
--- a/src/p_saveg.c
+++ b/src/p_saveg.c
@@ -1406,7 +1406,7 @@ static void SaveMobjThinker(const thinker_t *th, const UINT8 type)
 		diff |= MD_TICS;
 	if (mobj->sprite != mobj->state->sprite)
 		diff |= MD_SPRITE;
-	if (mobj->sprite == SPR_PLAY && mobj->sprite2 != 0)
+	if (mobj->sprite == SPR_PLAY && mobj->sprite2 != (mobj->state->frame&FF_FRAMEMASK))
 		diff |= MD_SPRITE;
 	if (mobj->frame != mobj->state->frame)
 		diff |= MD_FRAME;