diff --git a/engine/server/pr_cmds.c b/engine/server/pr_cmds.c index d1929681c..f67feb9ad 100644 --- a/engine/server/pr_cmds.c +++ b/engine/server/pr_cmds.c @@ -5212,6 +5212,8 @@ client_t *Write_GetClient(void) entnum = NUM_FOR_EDICT(svprogfuncs, ent); if (entnum < 1 || entnum > sv.allocated_client_slots) return NULL;//PR_RunError ("WriteDest: not a client"); + if (svs.clients[entnum-1].protocol == SCP_BAD) + return NULL; //don't try writing to bots... we don't want the overflows. return &svs.clients[entnum-1]; } diff --git a/engine/server/sv_ents.c b/engine/server/sv_ents.c index 67e1467b5..91acda181 100644 --- a/engine/server/sv_ents.c +++ b/engine/server/sv_ents.c @@ -4440,6 +4440,11 @@ void SV_CleanupEnts(void) if (!needcleanup) return; + if (needcleanup >= sv.world.num_edicts) + { + needcleanup = 0; + return; + } for (e=1 ; e<=needcleanup ; e++) {