diff options
-rw-r--r-- | handle.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/handle.c b/handle.c index 35c1e5f..ae3dbfa 100644 --- a/handle.c +++ b/handle.c @@ -103,7 +103,7 @@ static void handlePing(char *prefix, char *params) { ircFmt("PONG %s\r\n", params); } -static void handleReplyErroneousNickname(char *prefix, char *params) { +static void handleErrorErroneousNickname(char *prefix, char *params) { char *mesg; shift(prefix, NULL, NULL, NULL, params, 3, 0, NULL, NULL, &mesg); uiFmt(TagStatus, UIHot, "You can't use that name here: \"%s\"", mesg); @@ -140,7 +140,7 @@ static void handleReplyWhoisUser(char *prefix, char *params) { whoisColor = formatColor(user); uiFmt( TagStatus, UIWarm, - "\3%d%s\3 is %s@%s \"%s\"", + "\3%d%s\3 is %s@%s, \"%s\"", whoisColor, nick, user, host, real ); } @@ -182,6 +182,12 @@ static void handleReplyWhoisChannels(char *prefix, char *params) { uiFmt(TagStatus, UIWarm, "\3%d%s\3 is in %s", whoisColor, nick, chans); } +static void handleErrorNoSuchNick(char *prefix, char *params) { + char *nick, *mesg; + shift(prefix, NULL, NULL, NULL, params, 3, 0, NULL, &nick, &mesg); + uiFmt(TagStatus, UIWarm, "%s, \"%s\"", mesg, nick); +} + static void handleJoin(char *prefix, char *params) { char *nick, *user, *chan; shift(prefix, &nick, &user, NULL, params, 1, 0, &chan); @@ -464,8 +470,9 @@ static const struct { { "366", handleReplyEndOfNames }, { "372", handleReplyMOTD }, { "375", handleReplyMOTD }, - { "432", handleReplyErroneousNickname }, - { "433", handleReplyErroneousNickname }, + { "401", handleErrorNoSuchNick }, + { "432", handleErrorErroneousNickname }, + { "433", handleErrorErroneousNickname }, { "JOIN", handleJoin }, { "KICK", handleKick }, { "NICK", handleNick }, |