fixed several annoyances - sic - simple irc client | |
git clone git://git.suckless.org/sic | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 2c257c70bc2529aafcc1116b4247ba214d70ff00 | |
parent fb185a5e18042d811990dcd5855b62e88d81a9d7 | |
Author: Anselm R. Garbe <[email protected]> | |
Date: Tue, 5 Sep 2006 09:47:15 +0200 | |
fixed several annoyances | |
Diffstat: | |
M sic.c | 24 +++++++++++------------- | |
1 file changed, 11 insertions(+), 13 deletions(-) | |
--- | |
diff --git a/sic.c b/sic.c | |
@@ -78,34 +78,32 @@ parsein(char *msg) | |
} | |
if((p = strchr(&msg[3], ' '))) | |
*(p++) = 0; | |
- switch (msg[1]) { | |
- default: | |
- snprintf(bufout, sizeof(bufout), "%s\r\n", &msg[1]); | |
- break; | |
- case 'j': | |
+ if(!strncmp(msg + 1, "j ", 2)) { | |
if(msg[3] == '#') | |
snprintf(bufout, sizeof(bufout), "JOIN %s\r\n", &msg[3… | |
else if(p) { | |
privmsg(&msg[3], p + 1); | |
return; | |
} | |
- break; | |
- case 'l': | |
+ } | |
+ else if(!strncmp(msg + 1, "l ", 2)) { | |
if(p) | |
snprintf(bufout, sizeof(bufout), "PART %s :%s\r\n", &m… | |
else | |
snprintf(bufout, sizeof(bufout), "PART %s :sic\r\n", &… | |
- break; | |
- case 'm': | |
+ } | |
+ else if(!strncmp(msg + 1, "m ", 2)) { | |
privmsg(&msg[3], p); | |
return; | |
- case 's': | |
+ } | |
+ else if(!strncmp(msg + 1, "s ", 2)) { | |
strncpy(channel, &msg[3], sizeof(channel)); | |
return; | |
- case 't': | |
- snprintf(bufout, sizeof(bufout), "TOPIC %s :%s\r\n", &msg[3], … | |
- break; | |
} | |
+ else if(!strncmp(msg + 1, "t ", 2)) | |
+ snprintf(bufout, sizeof(bufout), "TOPIC %s :%s\r\n", &msg[3], … | |
+ else | |
+ snprintf(bufout, sizeof(bufout), "%s\r\n", &msg[1]); | |
write(srv, bufout, strlen(bufout)); | |
} | |