]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_rline.cpp
Fix memory leak and invalid vtable location on unload of m_sslinfo
[user/henk/code/inspircd.git] / src / modules / m_rline.cpp
index 26c6f0ab8cdfc660b59ac4aed0e165cc223d3fd0..b2ddd798df9c0f076dc435f187f0baf3cedb8e1e 100644 (file)
@@ -121,9 +121,8 @@ class CommandRLine : public Command
        std::string rxengine;
 
  public:
-       CommandRLine (InspIRCd* Instance) : Command(Instance,"RLINE", "o", 1, 3)
+       CommandRLine (InspIRCd* Instance, Module* Creator) : Command(Instance, Creator,"RLINE", "o", 1, 3)
        {
-               this->source = "m_rline.so";
                this->syntax = "<regex> [<rline-duration>] :<reason>";
        }
 
@@ -194,7 +193,7 @@ class ModuleRLine : public Module
        std::string RegexEngine;
 
  public:
-       ModuleRLine(InspIRCd* Me) : Module(Me), r(Me), f(Me)
+       ModuleRLine(InspIRCd* Me) : Module(Me), r(Me, this), f(Me)
        {
                mymodule = this;
                OnRehash(NULL);
@@ -268,13 +267,13 @@ class ModuleRLine : public Module
                }
        }
 
-       virtual int OnStats(char symbol, User* user, string_list &results)
+       virtual ModResult OnStats(char symbol, User* user, string_list &results)
        {
                if (symbol != 'R')
-                       return 0;
+                       return MOD_RES_PASSTHRU;
 
                ServerInstance->XLines->InvokeStats("R", 223, user, results);
-               return 1;
+               return MOD_RES_DENY;
        }
 
        virtual void OnLoadModule(Module* mod, const std::string& name)