diff --git a/source/src/server.cpp b/source/src/server.cpp
index c3e31c0d..b83818ce 100644
--- a/source/src/server.cpp
+++ b/source/src/server.cpp
@@ -555,7 +555,7 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1
if(packet->flags&ENET_PACKET_FLAG_RELIABLE) reliablemessages = true;
- #define QUEUE_MSG { while(curmsg
messages.add(p.buf[curmsg++]); }
+ #define QUEUE_MSG { if(cl->type==ST_TCPIP) while(curmsgmessages.add(p.buf[curmsg++]); }
int curmsg;
while((curmsg = p.length()) < p.maxlen) switch(type = getint(p))
{
@@ -575,7 +575,7 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1
getstring(text, p);
if(!text[0]) s_strcpy(text, "unarmed");
s_strncpy(cl->name, text, MAXNAMELEN+1);
- if(newclient)
+ if(newclient && cl->type==ST_TCPIP)
{
clientscore *sc = findscore(*cl, false);
if(sc)
@@ -641,8 +641,11 @@ void process(ENetPacket *packet, int sender, int chan) // sender may be -1
loopi(3) clients[cn]->pos[i] = getuint(p);
getuint(p);
loopi(6) getint(p);
- cl->position.setsizenodelete(0);
- while(curmsgposition.add(p.buf[curmsg++]);
+ if(cl->type==ST_TCPIP)
+ {
+ cl->position.setsizenodelete(0);
+ while(curmsgposition.add(p.buf[curmsg++]);
+ };
break;
};