diff --git a/src/d_clisrv.c b/src/d_clisrv.c
index a3fbe88d928e5dc82be2837917d7361b7d6e722a..b198011a0eeff38f0e3936cc7a28b1ce3281554e 100644
--- a/src/d_clisrv.c
+++ b/src/d_clisrv.c
@@ -2501,10 +2501,14 @@ static void CL_RemovePlayer(INT32 playernum, kickreason_t reason)
 		}
 
 		count--;
-		spheres = players[playernum].spheres;
-		rings = players[playernum].rings;
-		sincrement = spheres/count;
-		rincrement = rings/count;
+		sincrement = spheres = players[playernum].spheres;
+		rincrement = rings = players[playernum].rings;
+
+		if (count)
+		{
+			sincrement /= count;
+			rincrement /= count;
+		}
 
 		for (i = 0; i < MAXPLAYERS; i++)
 		{