diff options
author | Andrey Nazarov <skuller@skuller.net> | 2011-12-15 17:49:02 +0400 |
---|---|---|
committer | Andrey Nazarov <skuller@skuller.net> | 2011-12-15 17:49:02 +0400 |
commit | 108d8ec7e63ff7a476b39bbf209580cdc5edd86b (patch) | |
tree | 9468a6ad60c12bdb7cd41a38cb8374102cd3301d /src/sv_main.c | |
parent | 0a617d7fa96f4a8b3b2a1963f04edb594cabe530 (diff) |
Clean up SV_ExecuteClientMessage.
Diffstat (limited to 'src/sv_main.c')
-rw-r--r-- | src/sv_main.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/sv_main.c b/src/sv_main.c index 6aa15fd..ab0a43d 100644 --- a/src/sv_main.c +++ b/src/sv_main.c @@ -1278,19 +1278,21 @@ static void SV_PacketEvent( void ) { netchan->remote_address.port = net_from.port; } - if( netchan->Process( netchan ) ) { - // this is a valid, sequenced packet, so process it - if( client->state != cs_zombie ) { - //if( client->state != cs_assigned ) { - client->lastmessage = svs.realtime; // don't timeout - //} + if( !netchan->Process( netchan ) ) + break; + + if( client->state == cs_zombie ) + break; + + // this is a valid, sequenced packet, so process it + client->lastmessage = svs.realtime; // don't timeout #if USE_ICMP - client->unreachable = qfalse; // don't drop + client->unreachable = qfalse; // don't drop #endif - SV_ExecuteClientMessage( client ); - } - } + if( netchan->dropped > 0 ) + client->frameflags |= FF_CLIENTDROP; + SV_ExecuteClientMessage( client ); break; } } |