]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_stripcolor.cpp
Add config <options:disablehmac> to support disabling of HMAC, and tidy up to detect...
[user/henk/code/inspircd.git] / src / modules / m_stripcolor.cpp
index 634358a6cb483632af1691ab55fde08ac894c7c7..3254d98951495fcdc146f2778f6cfe71978f204a 100644 (file)
@@ -116,14 +116,11 @@ class ModuleStripColor : public Module
                DELETE(csc);
        }
        
-       // ANSI colour stripping by Doc (Peter Wood)
-       virtual void ReplaceLine(std::string &text)
+       // ANSI colour stripping based on C example by Doc (Peter Wood)
+       virtual void ReplaceLine(std::string &sentence)
        {
                int i, a, len, remove;
-               char sentence[MAXBUF];
-               strlcpy(sentence,text.c_str(),MAXBUF);
-  
-               len = text.length();
+               len = sentence.length();
 
                for (i = 0; i < len; i++)
                {
@@ -167,8 +164,6 @@ class ModuleStripColor : public Module
                                i--;
                        }
                }
-               
-               text = sentence;
        }
        
        virtual int OnUserPreMessage(userrec* user,void* dest,int target_type, std::string &text, char status, CUList &exempt_list)
@@ -180,12 +175,12 @@ class ModuleStripColor : public Module
                if (target_type == TYPE_USER)
                {
                        userrec* t = (userrec*)dest;
-                       active = t->modes['S'-65];
+                       active = t->IsModeSet('S');
                }
                else if (target_type == TYPE_CHANNEL)
                {
                        chanrec* t = (chanrec*)dest;
-                       active = (t->IsModeSet('S'));
+                       active = t->IsModeSet('S');
                }
                if (active)
                {