return std::make_pair(false, parameter);
}
- void RemoveMode(Channel* channel, char mc)
+ void RemoveMode(Channel* channel, char mc, irc::modestacker* stack)
{
CUList* cl = channel->GetUsers();
std::string item = extend + std::string(channel->name);
{
if (i->first->GetExt(item))
{
- modestack.Push(mc, i->first->nick);
+ if (stack)
+ stack->Push(mc, i->first->nick);
+ else
+ modestack.Push(mc, i->first->nick);
}
}
+ if (stack)
+ return;
+
while (modestack.GetStackedLine(stackresult))
{
for (size_t j = 0; j < stackresult.size(); j++)
return FounderProtectBase::ModeSet(source, dest, channel, parameter);
}
- void RemoveMode(Channel* channel)
+ void RemoveMode(Channel* channel, irc::modestacker* stack)
{
- FounderProtectBase::RemoveMode(channel, this->GetModeChar());
+ FounderProtectBase::RemoveMode(channel, this->GetModeChar(), stack);
}
- void RemoveMode(User* user)
+ void RemoveMode(User* user, irc::modestacker* stack)
{
}
return FounderProtectBase::ModeSet(source, dest, channel, parameter);
}
- void RemoveMode(Channel* channel)
+ void RemoveMode(Channel* channel, irc::modestacker* stack)
{
- FounderProtectBase::RemoveMode(channel, this->GetModeChar());
+ FounderProtectBase::RemoveMode(channel, this->GetModeChar(), stack);
}
- void RemoveMode(User* user)
+ void RemoveMode(User* user, irc::modestacker* stack)
{
}