From 45a84ead827ed3619d81587e257f6b0f7d7f4796 Mon Sep 17 00:00:00 2001 From: Lev Date: Tue, 21 Mar 2017 01:14:27 +0500 Subject: [PATCH] Add check for NULL edict. --- rehlds/engine/host.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/rehlds/engine/host.cpp b/rehlds/engine/host.cpp index ebab4af..1eb758d 100644 --- a/rehlds/engine/host.cpp +++ b/rehlds/engine/host.cpp @@ -520,11 +520,14 @@ void SV_DropClient_internal(client_t *cl, qboolean crash, const char *string) cl->proxy = FALSE; COM_ClearCustomizationList(&cl->customdata, FALSE); #ifdef REHLDS_FIXES - // Reset flags, leave FL_DORMANT used by CS - cl->edict->v.flags &= FL_DORMANT; - // Since the edict doesn't get deleted, fix it so it doesn't interfere. - cl->edict->v.takedamage = DAMAGE_NO; // don't attract autoaim - cl->edict->v.solid = SOLID_NOT; + if (cl->edict) + { + // Reset flags, leave FL_DORMANT used by CS + cl->edict->v.flags &= FL_DORMANT; + // Since the edict doesn't get deleted, fix it so it doesn't interfere. + cl->edict->v.takedamage = DAMAGE_NO; // don't attract autoaim + cl->edict->v.solid = SOLID_NOT; + } #endif // REHLDS_FIXES cl->edict = NULL; Q_memset(cl->userinfo, 0, sizeof(cl->userinfo));