- when a client overflows print out the backbuf too, not just

netchan.message
- tweak the svc_print netlog spacing
This commit is contained in:
Adam Olsen 2001-09-24 16:25:49 +00:00
parent 19b6ce83a1
commit b52d7fd3d9
2 changed files with 10 additions and 3 deletions

View file

@ -506,8 +506,8 @@ Parse_Server_Packet ()
break;
case svc_print:
// FIXME: i==PRINT_CHAT
Net_LogPrintf (" [%d]", MSG_ReadByte (&packet));
Net_LogPrintf (" %s", MSG_ReadString (&packet));
Net_LogPrintf ("[%d] ", MSG_ReadByte (&packet));
Net_LogPrintf ("%s", MSG_ReadString (&packet));
break;
case svc_stufftext:
Net_LogPrintf ("%s", MSG_ReadString (&packet));

View file

@ -719,14 +719,21 @@ SV_SendClientMessages (void)
}
// if the reliable message overflowed, drop the client
if (c->netchan.message.overflowed) {
int i;
extern void Analyze_Server_Packet (byte *data, int len);
byte *data = Hunk_TempAlloc (c->netchan.message.cursize + 8);
byte *data = Hunk_TempAlloc (MAX_MSGLEN + 8);
memset (data, 0, 8);
memcpy (data + 8, c->netchan.message.data,
c->netchan.message.cursize);
Analyze_Server_Packet (data, c->netchan.message.cursize + 8);
for (i = 0; i < c->num_backbuf; i++) {
memcpy (data + 8, c->backbuf_data[i], c->backbuf_size[i]);
Analyze_Server_Packet (data, c->backbuf_size[i] + 8);
}
SZ_Clear (&c->netchan.message);
SZ_Clear (&c->datagram);
SV_BroadcastPrintf (PRINT_HIGH, "%s overflowed\n", c->name);