diff options
| author | 2010-02-09 12:04:42 -0600 | |
|---|---|---|
| committer | 2010-08-03 17:32:34 -0400 | |
| commit | 5545f57998a013fbe8fedf02974586dc6a8b1fea (patch) | |
| tree | d2d107fde217103cc4fb51ed5dec8e5ee0f72831 /src/modules.cpp | |
| parent | Module compilation fixups (diff) | |
Update InspIRCd::SendMode to take a modestacker
Diffstat (limited to 'src/modules.cpp')
| -rw-r--r-- | src/modules.cpp | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/src/modules.cpp b/src/modules.cpp index 0e4e9c7c9..1f9d1a49b 100644 --- a/src/modules.cpp +++ b/src/modules.cpp @@ -518,15 +518,28 @@ dynamic_reference_base::operator bool() return value; } -void InspIRCd::SendMode(const std::vector<std::string>& parameters, User *user) +void InspIRCd::SendMode(const std::vector<std::string>& parameters, User *src) { - this->Modes->Process(parameters, user); + Extensible* target; + irc::modestacker modes; + Modes->Parse(parameters, src, target, modes); + Modes->Process(src, target, modes); } -void InspIRCd::SendGlobalMode(const std::vector<std::string>& parameters, User *user) +void InspIRCd::SendGlobalMode(const std::vector<std::string>& parameters, User *src) { - Modes->Process(parameters, user); - // TODO + Extensible* target; + irc::modestacker modes; + Modes->Parse(parameters, src, target, modes); + Modes->Process(src, target, modes); + PI->SendMode(src, target, modes); +} + +void InspIRCd::SendMode(User *src, Extensible* target, irc::modestacker& modes, bool global) +{ + Modes->Process(src, target, modes); + if (global) + PI->SendMode(src, target, modes); } bool InspIRCd::AddResolver(Resolver* r, bool cached) |
