From 259b10b83af2b710b5fde90d436bec27a476b0cb Mon Sep 17 00:00:00 2001 From: Sadie Powell Date: Mon, 11 Mar 2024 20:27:30 +0000 Subject: [PATCH] Fix some InspIRCd 1206 protocol compatibility issues. --- modules/protocol/inspircd.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/protocol/inspircd.cpp b/modules/protocol/inspircd.cpp index 72f1b1cf1..1d26c6d9b 100644 --- a/modules/protocol/inspircd.cpp +++ b/modules/protocol/inspircd.cpp @@ -1563,7 +1563,7 @@ struct IRCDMessageCapab final } else if (params[0].equals_cs("END")) { - if (spanningtree_proto_ver >= 1206) + if (spanningtree_proto_ver < 1206) { if (!Servers::Capab.count("ACCOUNT") || !Servers::Capab.count("SERVICES")) { @@ -2336,11 +2336,11 @@ struct IRCDMessageUID final */ void Run(MessageSource &source, const std::vector ¶ms, const Anope::map &tags) override { - size_t offset = params[9][0] == '+' ? 1 : 0; + size_t offset = params[8][0] == '+' ? 0 : 1; time_t ts = Anope::Convert(params[1], 0); - Anope::string modes = params[8]; - for (unsigned i = 9; i < params.size() - 1; ++i) + Anope::string modes = params[8+offset]; + for (unsigned i = 9+offset; i < params.size() - 1; ++i) modes += " " + params[i]; NickAlias *na = NULL;