From 55cbc410179a1d6f454b1178d99c9718ae8b5966 Mon Sep 17 00:00:00 2001 From: Sally Coolatta Date: Tue, 7 Jun 2022 19:22:44 -0400 Subject: [PATCH] Attempt fix for players being able to get admin Tyron said there is an "outstanding base game bug where an authenticated player can ghost and a new player will log in on their node, inheriting admin" ... wow that's terrifying! Let's reset admin for every instance of CL_ClearPlayer instead of only in CL_RemovePlayer. --- src/d_clisrv.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index 3ba0b31aa..6ac5ab551 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -2291,6 +2291,8 @@ void CL_ClearPlayer(INT32 playernum) splitscreen_original_party_size[playernum] = 0; memset(&players[playernum], 0, sizeof (player_t)); + + RemoveAdminPlayer(playernum); // don't stay admin after you're gone } // @@ -2348,11 +2350,6 @@ void CL_RemovePlayer(INT32 playernum, kickreason_t reason) player_name_changes[playernum] = 0; - if (IsPlayerAdmin(playernum)) - { - RemoveAdminPlayer(playernum); // don't stay admin after you're gone - } - LUA_InvalidatePlayer(&players[playernum]); K_CheckBumpers();