summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/modules/m_filter.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/modules/m_filter.h b/src/modules/m_filter.h
index ec95431fa..ba52ce70b 100644
--- a/src/modules/m_filter.h
+++ b/src/modules/m_filter.h
@@ -254,7 +254,10 @@ int FilterBase::OnPreCommand(const std::string &command, const char** parameters
params[item] = parameters[item];
params[replacepoint] = "Reason filtered";
- if (f->action == "block")
+ /* We're blocking, OR theyre quitting and its a KILL action
+ * (we cant kill someone whos already quitting, so filter them anyway)
+ */
+ if ((f->action == "block") || (((!parting) && (f->action == "kill"))))
{
c->Handle(params, pcnt, user);
return 1;