]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_censor.cpp
Works with the m_testclient test program/suite!
[user/henk/code/inspircd.git] / src / modules / m_censor.cpp
index 246079c10cd347d2f336a652b816c6a8a646d740..69db8bbe6936d9c304be62c53e6dd161b0c14673 100644 (file)
@@ -43,6 +43,10 @@ class CensorUser : public ModeHandler
 
        ModeAction OnModeChange(userrec* source, userrec* dest, chanrec* channel, std::string &parameter, bool adding)
        {
+               /* Only opers can change other users modes */
+               if ((source != dest) && (!*source->oper))
+                       return MODEACTION_DENY;
+
                if (adding)
                {
                        if (!dest->IsModeSet('G'))
@@ -137,8 +141,8 @@ class ModuleCensor : public Module
  
        virtual ~ModuleCensor()
        {
-               delete cu;
-               delete cc;
+               DELETE(cu);
+               DELETE(cc);
        }
        
        virtual void ReplaceLine(irc::string &text, irc::string pattern, irc::string replace)
@@ -249,4 +253,3 @@ extern "C" void * init_module( void )
 {
        return new ModuleCensorFactory;
 }
-