summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/censor.conf.example2
-rw-r--r--src/modules/m_censor.cpp11
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);
+ }
}
}