From 5545f57998a013fbe8fedf02974586dc6a8b1fea Mon Sep 17 00:00:00 2001 From: Daniel De Graaf Date: Tue, 9 Feb 2010 12:04:42 -0600 Subject: Update InspIRCd::SendMode to take a modestacker --- src/modules.cpp | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'src/modules.cpp') 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& parameters, User *user) +void InspIRCd::SendMode(const std::vector& 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& parameters, User *user) +void InspIRCd::SendGlobalMode(const std::vector& 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) -- cgit v1.3.1-10-gc9f91