summary refs log tree commit diff
path: root/handle.c
diff options
context:
space:
mode:
authorC. McEnroe2020-02-20 02:32:36 -0500
committerC. McEnroe2020-02-20 02:32:36 -0500
commit42ad42887cfe4ccf111fe654cdeaf1e7b99dd5f6 (patch)
tree9da90ed4a7cc19dc627fd3ab9429df80382c7154 /handle.c
parent5c79b16a51d3a897371a42790e2c7ff5039b2695 (diff)
Handle RPL_INVITING when no invite-notify
Diffstat (limited to 'handle.c')
-rw-r--r--handle.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/handle.c b/handle.c
index c2c32f1..6a81380 100644
--- a/handle.c
+++ b/handle.c
@@ -506,6 +506,19 @@ static void handleInvite(struct Message *msg) {
 	}
 }
 
+static void handleReplyInviting(struct Message *msg) {
+	require(msg, false, 3);
+	if (self.caps & CapInviteNotify) return;
+	struct Message invite = {
+		.nick = self.nick,
+		.user = self.user,
+		.cmd = "INVITE",
+		.params[0] = msg->params[1],
+		.params[1] = msg->params[2],
+	};
+	handleInvite(&invite);
+}
+
 static void handleErrorUserOnChannel(struct Message *msg) {
 	require(msg, false, 4);
 	uint id = idFor(msg->params[2]);
@@ -791,6 +804,7 @@ static const struct Handler {
 	{ "330", handleReplyWhoisGeneric },
 	{ "331", handleReplyNoTopic },
 	{ "332", handleReplyTopic },
+	{ "341", handleReplyInviting },
 	{ "353", handleReplyNames },
 	{ "366", handleReplyEndOfNames },
 	{ "367", handleReplyBanList },