From 92920f5a1c8866c8e26e1608f0feb3e3e54c8dd2 Mon Sep 17 00:00:00 2001 From: Adam Date: Wed, 11 Mar 2015 14:49:03 -0400 Subject: Only matches sqlines against channels if they begin with a # --- modules/pseudoclients/operserv.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'modules/pseudoclients') diff --git a/modules/pseudoclients/operserv.cpp b/modules/pseudoclients/operserv.cpp index 67eaecd45..439c33708 100644 --- a/modules/pseudoclients/operserv.cpp +++ b/modules/pseudoclients/operserv.cpp @@ -117,13 +117,20 @@ class SQLineManager : public XLineManager for (std::vector::const_iterator it = this->GetList().begin(), it_end = this->GetList().end(); it != it_end; ++it) { XLine *x = *it; + if (x->regex) { if (x->regex->Matches(c->name)) return x; } - else if (Anope::Match(c->name, x->mask, false, true)) - return x; + else + { + if (x->mask.empty() || x->mask[0] != '#') + continue; + + if (Anope::Match(c->name, x->mask, false, true)) + return x; + } } return NULL; } -- cgit From 02ed9a9725c40b57df965c4a13579bafebef2af3 Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 29 Jun 2015 19:35:57 -0400 Subject: #1649 don't update keepmodes during inhbait --- modules/pseudoclients/chanserv.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules/pseudoclients') diff --git a/modules/pseudoclients/chanserv.cpp b/modules/pseudoclients/chanserv.cpp index 41a62d7b4..0ceeded25 100644 --- a/modules/pseudoclients/chanserv.cpp +++ b/modules/pseudoclients/chanserv.cpp @@ -66,12 +66,12 @@ class ChanServCore : public Module, public ChanServService if (!c) return; - inhabit.Unset(c); - /* In the event we don't part */ c->RemoveMode(NULL, "SECRET"); c->RemoveMode(NULL, "INVITE"); + inhabit.Unset(c); /* now we're done changing modes, unset inhabit */ + if (!c->ci || !c->ci->bi) { if (ChanServ) -- cgit From 1666b1a8d8d629fd4ea89b083863dc217154eee9 Mon Sep 17 00:00:00 2001 From: Peter Powell Date: Wed, 8 Jul 2015 10:55:44 +0100 Subject: Fix a ton of typos. --- modules/pseudoclients/botserv.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'modules/pseudoclients') diff --git a/modules/pseudoclients/botserv.cpp b/modules/pseudoclients/botserv.cpp index 55c57b974..2d32eb502 100644 --- a/modules/pseudoclients/botserv.cpp +++ b/modules/pseudoclients/botserv.cpp @@ -90,7 +90,7 @@ class BotServCore : public Module { /** * We let the bot join even if it was an ignored user, as if we don't, - * and the ignored user doesnt just leave, the bot will never + * and the ignored user doesn't just leave, the bot will never * make it into the channel, leaving the channel botless even for * legit users - Rob **/ @@ -109,7 +109,7 @@ class BotServCore : public Module if (c->ci && persist && persist->HasExt(c->ci)) return; - /* Channel is syncing from a netburst, don't destroy it as more users are probably wanting to join immediatly + /* Channel is syncing from a netburst, don't destroy it as more users are probably wanting to join immediately * We also don't part the bot here either, if necessary we will part it after the sync */ if (c->syncing) -- cgit From 7a21648683f36a80ca1173844c081b43b12a3514 Mon Sep 17 00:00:00 2001 From: Adam Date: Thu, 20 Aug 2015 15:04:03 -0400 Subject: Only remove collide timers if the account matches on id --- modules/pseudoclients/nickserv.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'modules/pseudoclients') diff --git a/modules/pseudoclients/nickserv.cpp b/modules/pseudoclients/nickserv.cpp index c51a15360..ee1049195 100644 --- a/modules/pseudoclients/nickserv.cpp +++ b/modules/pseudoclients/nickserv.cpp @@ -39,6 +39,11 @@ class NickServCollide : public Timer return u; } + NickAlias *GetNick() + { + return na; + } + void Tick(time_t t) anope_override { if (!u || !na) @@ -361,7 +366,7 @@ class NickServCore : public Module, public NickServService for (std::set::iterator it = collides.begin(); it != collides.end(); ++it) { NickServCollide *c = *it; - if (c->GetUser() == u) + if (c->GetUser() == u && c->GetNick() && c->GetNick()->nc == u->Account()) { delete c; break; -- cgit