summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-12-29 11:01:05 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-12-29 11:01:05 +0000
commitba2d1219507a9e950777ff4c7bd099b09bdfdece (patch)
tree8963daaa814c9d48a9e02d5f6412d8e2832e6bdd /src
parent80af129f5275b707c58537b8044d991a0c7e01d3 (diff)
Fix desync (modes not being pushed to remote servers with send_mode event)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6157 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r--src/modules/m_opermodes.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/modules/m_opermodes.cpp b/src/modules/m_opermodes.cpp
index a0e762dbf..63a926407 100644
--- a/src/modules/m_opermodes.cpp
+++ b/src/modules/m_opermodes.cpp
@@ -97,7 +97,15 @@ class ModuleModesOnOper : public Module
i++;
}
}
-
+ std::deque<std::string> n;
+ Event rmode((char *)&n, NULL, "send_mode");
+ n.push_back(user->nick);
+ n.push_back(modes[0]);
+ for (unsigned int j = 1; j < tokens.size(); j++)
+ {
+ n.push_back(modes[j]);
+ }
+ rmode.Send(ServerInstance);
ServerInstance->Log(DEBUG, "m_opermodes.so: new modes for %s: %s", modes[0], modes[1]);
ServerInstance->SendMode(modes, size, user);
}