diff --git a/CHANGES b/CHANGES index d18eca2..ab0943f 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,8 @@ - -k now specifies an environment variable that contains the server key. This behaviour has been changed in order to not expose the password in the process list. + - Fix parsing of JOIN messages for certain servers. + Thanks Ivan Kanakarakis! 1.6 (2011-01-31): - fix regression introduced for handling unknown commands diff --git a/ii.c b/ii.c index a2acf88..6eeeb04 100644 --- a/ii.c +++ b/ii.c @@ -347,13 +347,9 @@ static void proc_server_cmd(char *buf) { } else if(!strncmp("ERROR", argv[TOK_CMD], 6)) snprintf(message, PIPE_BUF, "-!- error %s", argv[TOK_TEXT] ? argv[TOK_TEXT] : "unknown"); else if(!strncmp("JOIN", argv[TOK_CMD], 5)) { - if(argv[TOK_TEXT] != NULL){ - p = strchr(argv[TOK_TEXT], ' '); - if(p) - *p = 0; - } - argv[TOK_CHAN] = argv[TOK_TEXT]; - snprintf(message, PIPE_BUF, "-!- %s(%s) has joined %s", argv[TOK_NICKSRV], argv[TOK_USER], argv[TOK_TEXT]); + if (argv[TOK_TEXT] != NULL) + argv[TOK_CHAN] = argv[TOK_TEXT]; + snprintf(message, PIPE_BUF, "-!- %s(%s) has joined %s", argv[TOK_NICKSRV], argv[TOK_USER], argv[TOK_CHAN]); } else if(!strncmp("PART", argv[TOK_CMD], 5)) { snprintf(message, PIPE_BUF, "-!- %s(%s) has left %s", argv[TOK_NICKSRV], argv[TOK_USER], argv[TOK_CHAN]); } else if(!strncmp("MODE", argv[TOK_CMD], 5))