diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2004-05-22 21:45:59 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2004-05-22 21:45:59 +0000 |
commit | 2cc838ec2237e11eaa30d0521d34233e8d1701c3 (patch) | |
tree | 28c80a6ec6229078812631839c43fa4a67a63487 | |
parent | b513b12594c07ee24f1a3c3dc7794fddcd2005c4 (diff) |
Fixed issue where ReplaceText threw an exception (!)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@823 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | docs/censor.conf.example | 2 | ||||
-rw-r--r-- | src/modules/m_censor.cpp | 11 |
2 files changed, 8 insertions, 5 deletions
diff --git a/docs/censor.conf.example b/docs/censor.conf.example index ff6136e1d..296fb22d0 100644 --- a/docs/censor.conf.example +++ b/docs/censor.conf.example @@ -8,5 +8,5 @@ # replace="text to replace with"> <badword text="shit" replace="poo"> -<badword pattern="fuck" reason="(censored)"> +<badword pattern="fuck" replace="(censored)"> diff --git a/src/modules/m_censor.cpp b/src/modules/m_censor.cpp index 40e4ee92b..769e6e493 100644 --- a/src/modules/m_censor.cpp +++ b/src/modules/m_censor.cpp @@ -71,11 +71,14 @@ class ModuleCensor : public Module virtual void ReplaceLine(std::string &text,std::string pattern, std::string replace) { - while (strstr(text.c_str(),pattern.c_str())) + if ((pattern != "") && (text != "")) { - int pos = text.find(pattern); - text.erase(pos,pattern.length()); - text.insert(pos,replace); + while (strstr(text.c_str(),pattern.c_str())) + { + int pos = text.find(pattern); + text.erase(pos,pattern.length()); + text.insert(pos,replace); + } } } |