summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Sirainen <cras@irssi.org>2001-11-20 21:19:35 +0000
committercras <cras@dbcabf3a-b0e7-0310-adc4-f8d773084564>2001-11-20 21:19:35 +0000
commitd133a90eaa4e8c94ce193c9436373bea8088361f (patch)
tree724f9022369951268053c53af08981008841496d
parentcd09cd63329f43b330593b8b6602deffcd71e40c (diff)
downloadirssi-d133a90eaa4e8c94ce193c9436373bea8088361f.zip
377 numeric seems to be used as motd by some servers..
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2134 dbcabf3a-b0e7-0310-adc4-f8d773084564
-rw-r--r--src/fe-common/irc/fe-events-numeric.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/fe-common/irc/fe-events-numeric.c b/src/fe-common/irc/fe-events-numeric.c
index 1c0746cf..03e500cf 100644
--- a/src/fe-common/irc/fe-events-numeric.c
+++ b/src/fe-common/irc/fe-events-numeric.c
@@ -446,6 +446,7 @@ static void event_whois_realhost(IRC_SERVER_REC *server, const char *data)
if (strcmp(txt_real, "real") != 0 ||
strcmp(txt_hostname, "hostname") != 0) {
/* <yournick> <nick> :... from <hostname> */
+ g_free(params);
params = event_get_params(data, 3, NULL, &nick, &hostname);
from = strstr(hostname, "from ");
@@ -459,15 +460,23 @@ static void event_whois_realhost(IRC_SERVER_REC *server, const char *data)
static void event_whois_usermode(IRC_SERVER_REC *server, const char *data)
{
- char *params, *txt_usermodes, *nick, *usermode;
+ char *params, *txt_usermodes, *nick, *usermode, *text;
g_return_if_fail(data != NULL);
params = event_get_params(data, 4, NULL, &txt_usermodes,
&nick, &usermode);
- printformat(server, nick, MSGLEVEL_CRAP,
- IRCTXT_WHOIS_USERMODE, nick, usermode);
+ if (strcmp(txt_usermodes, "usermodes") == 0) {
+ /* <yournick> usermodes <nick> usermode */
+ printformat(server, nick, MSGLEVEL_CRAP,
+ IRCTXT_WHOIS_USERMODE, nick, usermode);
+ } else {
+ /* some servers use this as motd too.. */
+ g_free(params);
+ params = event_get_params(data, 2, NULL, &text);
+ printtext(server, NULL, MSGLEVEL_CRAP, "%s", text);
+ }
g_free(params);
}