* (bug #4232) Avoid "cl.snap.serverTime < cl.oldFrameServerTime" for slow

loading clients combined with short g_warmups
This commit is contained in:
Tim Angus 2009-10-15 23:39:19 +00:00
parent ab4bf148a1
commit b539a87e72

View file

@ -278,6 +278,15 @@ static void SV_MapRestart_f( void ) {
sv.serverId = com_frameTime;
Cvar_Set( "sv_serverid", va("%i", sv.serverId ) );
// if a map_restart occurs while a client is changing maps, we need
// to give them the correct time so that when they finish loading
// they don't violate the backwards time check in cl_cgame.c
for (i=0 ; i<sv_maxclients->integer ; i++) {
if (svs.clients[i].state >= CS_CONNECTED) {
svs.clients[i].oldServerTime = sv.restartTime;
}
}
// reset all the vm data in place without changing memory allocation
// note that we do NOT set sv.state = SS_LOADING, so configstrings that
// had been changed from their default values will generate broadcast updates