From 139036dd5a17e0e0f4caa3be170b1b1d770e5b96 Mon Sep 17 00:00:00 2001 From: Curtis McEnroe Date: Thu, 29 Nov 2018 05:52:27 -0500 Subject: Handle no such nick error --- handle.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'handle.c') 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 }, -- cgit 1.4.1