Fix sending downloads to 1.2 clients / legacy protocol

This commit is contained in:
Zack Middleton 2015-08-22 20:12:18 -05:00
parent 7f5096c450
commit 50c78e6d52
2 changed files with 20 additions and 2 deletions

View file

@ -1241,13 +1241,26 @@ int SV_SendDownloadMessages(void)
if(cl->state && *cl->downloadName)
{
MSG_Init(&msg, msgBuffer, sizeof(msgBuffer));
MSG_WriteLong(&msg, cl->lastClientCommand);
#ifdef ELITEFORCE
if(cl->compat)
{
MSG_InitOOB(&msg, msgBuffer, sizeof(msgBuffer));
msg.compat = qtrue;
}
else
#endif
{
MSG_Init(&msg, msgBuffer, sizeof(msgBuffer));
MSG_WriteLong(&msg, cl->lastClientCommand);
}
retval = SV_WriteDownloadToClient(cl, &msg);
if(retval)
{
#ifdef ELITEFORCE
if(!msg.compat)
#endif
MSG_WriteByte(&msg, svc_EOF);
SV_Netchan_Transmit(cl, &msg);
numDLs += retval;

View file

@ -671,7 +671,12 @@ void SV_SendClientMessages(void)
if(!c->state)
continue; // not connected
#ifdef ELITEFORCE
// compat clients need svc_snapshot to update reliableAcknowledge
if(*c->downloadName && !c->compat)
#else
if(*c->downloadName)
#endif
continue; // Client is downloading, don't send snapshots
if(c->netchan.unsentFragments || c->netchan_start_queue)