We dont need to send FMODE for user mode changes, and the FMODE handler doesnt need to error on FMODE from a user if we get one

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7017 e03df62e-2008-0410-955e-edbf42e46eb7
This commit is contained in:
brain 2007-05-13 20:55:58 +00:00
parent 74c85f2c45
commit 763deccf12
2 changed files with 5 additions and 3 deletions

View File

@ -1260,6 +1260,8 @@ void ModuleSpanningTree::OnEvent(Event* event)
if (a)
{
ourTS = a->age;
Utils->DoOneToMany(ServerInstance->Config->ServerName,"MODE",*params);
return;
}
else
{
@ -1267,10 +1269,10 @@ void ModuleSpanningTree::OnEvent(Event* event)
if (a)
{
ourTS = a->age;
params->insert(params->begin() + 1,ConvToStr(ourTS));
Utils->DoOneToMany(ServerInstance->Config->ServerName,"FMODE",*params);
}
}
params->insert(params->begin() + 1,ConvToStr(ourTS));
Utils->DoOneToMany(ServerInstance->Config->ServerName,"FMODE",*params);
}
else if (event->GetEventID() == "send_mode_explicit")
{

View File

@ -662,7 +662,7 @@ bool TreeSocket::ForceMode(const std::string &source, std::deque<std::string> &p
*/
if (TS <= ourTS)
{
if (TS < ourTS)
if ((TS < ourTS) && (!dst))
Instance->Log(DEFAULT,"*** BUG *** Channel TS sent in FMODE to %s is %lu which is not equal to %lu!", params[0].c_str(), TS, ourTS);
if (smode)