commit a5a7d1b3766546d7466f174f9c1c0be2f9f505f2
parent 9a0ea4ada1533bdd7292557cf7087a58bf478810
Author: Nico Golde <nion@suckless.org>
Date: Thu, 28 Jun 2012 15:41:57 +0200
fix parsing of JOIN messages for certain servers, thanks van Kanakarakis
Diffstat:
2 files changed, 5 insertions(+), 7 deletions(-)
diff --git 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
@@ -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))