diff options
-rw-r--r-- | source/sv_game.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/source/sv_game.c b/source/sv_game.c index 53b22fe..019ec50 100644 --- a/source/sv_game.c +++ b/source/sv_game.c @@ -97,11 +97,6 @@ static void PF_Unicast( edict_t *ent, qboolean reliable ) { goto clear; } - // HACK: fix anti-kicking exploit - if( msg_write.data[0] == svc_disconnect ) { - client->flags |= CF_DROP; - } - if( reliable ) { flags = MSG_RELIABLE; op = mvd_unicast_r; @@ -112,6 +107,13 @@ static void PF_Unicast( edict_t *ent, qboolean reliable ) { buf = &sv.mvd.datagram; } + // HACK: fix anti-kicking exploit + if( msg_write.data[0] == svc_disconnect ) { + SV_ClientAddMessage( client, flags ); + client->flags |= CF_DROP; + goto clear; + } + if( client == svs.mvd.dummy ) { if( msg_write.data[0] == svc_stufftext && memcmp( msg_write.data + 1, "play ", 5 ) ) |