diff --git a/src/g_game.c b/src/g_game.c
index 956751bb96a89b58466147beef4f8d9449b29738..30519b37907d8f2167c2daee4e3a5b318d8773dd 100644
--- a/src/g_game.c
+++ b/src/g_game.c
@@ -2999,6 +2999,8 @@ boolean G_EnoughPlayersFinished(void)
 	{
 		if (!playeringame[i] || players[i].spectator || players[i].bot)
 			continue;
+		if (players[i].quittime > 30 * TICRATE)
+			continue;
 		if (players[i].lives <= 0)
 			continue;
 
diff --git a/src/p_user.c b/src/p_user.c
index ea42a2c360b86449c688133c33631d8508b44e77..4044428b83a11f4eccbfcf98f575a9e508155042 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -11479,6 +11479,8 @@ void P_PlayerThink(player_t *player)
 			{
 				if (!playeringame[i] || players[i].spectator || players[i].bot)
 					continue;
+				if (players[i].quittime > 30 * TICRATE)
+					continue;
 				if (players[i].lives <= 0)
 					continue;