diff options
Diffstat (limited to 'src/inspircd.cpp')
-rw-r--r-- | src/inspircd.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp index f21df853a..9484532c2 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -5148,6 +5148,13 @@ void DoSync(serverrec* serv, char* udp_host,int udp_port, long MyKey) void handle_N(char token,char* params,serverrec* source,serverrec* reply, char* udp_host,int udp_port) { // %d %s %s %s %s %s %s :%s + char g[MAXBUF]; + strcpy(g,params); + char* gecos = g; + while ((gecos[0] != ':') && (strlen(gecos))) + gecos++; + if (strlen(gecos)) + gecos++; char* tm = strtok(params," "); char* nick = strtok(NULL," "); char* host = strtok(NULL," "); @@ -5155,7 +5162,7 @@ void handle_N(char token,char* params,serverrec* source,serverrec* reply, char* char* ident = strtok(NULL," "); char* modes = strtok(NULL," "); char* server = strtok(NULL," :"); - char* gecos = strtok(NULL,"\r\n"); + char* junk = strtok(NULL,"\r\n"); time_t TS = atoi(tm); user_hash::iterator iter = clientlist.find(nick); if (iter != clientlist.end()) |