summaryrefslogtreecommitdiff
path: root/src/modules/m_opermodes.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/m_opermodes.cpp')
-rw-r--r--src/modules/m_opermodes.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/modules/m_opermodes.cpp b/src/modules/m_opermodes.cpp
index a49cb34e8..c7ca62a69 100644
--- a/src/modules/m_opermodes.cpp
+++ b/src/modules/m_opermodes.cpp
@@ -40,7 +40,13 @@ class ModuleModesOnOper : public Module
void Implements(char* List)
{
- List[I_OnOper] = 1;
+ List[I_OnPostOper] = List[I_OnRehash] = 1;
+ }
+
+ virtual void OnRehash(std::string parameter)
+ {
+ delete Conf;
+ Conf = new ConfigReader;
}
virtual ~ModuleModesOnOper()
@@ -53,7 +59,7 @@ class ModuleModesOnOper : public Module
return Version(1,0,0,1,VF_VENDOR);
}
- virtual void OnOper(userrec* user, std::string opertype)
+ virtual void OnPostOper(userrec* user, std::string opertype)
{
// whenever a user opers, go through the oper types, find their <type:modes>,
// and if they have one apply their modes. The mode string can contain +modes