diff options
author | Sadie Powell <sadie@witchery.services> | 2024-03-11 20:27:30 +0000 |
---|---|---|
committer | Sadie Powell <sadie@witchery.services> | 2024-03-11 20:27:30 +0000 |
commit | 259b10b83af2b710b5fde90d436bec27a476b0cb (patch) | |
tree | b8e103d338c810f8a1040f2144c21ff82f173f32 /modules | |
parent | 02355546ff4a76a10049f9c7f03d0b778b247dba (diff) |
Fix some InspIRCd 1206 protocol compatibility issues.
Diffstat (limited to 'modules')
-rw-r--r-- | modules/protocol/inspircd.cpp | 8 |
1 files 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<Anope::string> ¶ms, const Anope::map<Anope::string> &tags) override { - size_t offset = params[9][0] == '+' ? 1 : 0; + size_t offset = params[8][0] == '+' ? 0 : 1; time_t ts = Anope::Convert<time_t>(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; |