diff --git a/modules/pseudoclients/operserv.cpp b/modules/pseudoclients/operserv.cpp index 7b02a9745..f443aed95 100644 --- a/modules/pseudoclients/operserv.cpp +++ b/modules/pseudoclients/operserv.cpp @@ -97,7 +97,12 @@ class SQLineManager : public XLineManager u->Kill(Config->GetClient("OperServ"), "Q-Lined: " + x->reason); } else if (x->mask[0] != '#' || IRCD->CanSQLineChannel) + { IRCD->SendSQLine(u, x); + /* If it is an oper, assume they're walking it, otherwise kill for good measure */ + if (u && !u->HasMode("OPER")) + u->Kill(Config->GetClient("OperServ"), "Q-Lined: " + x->reason); + } } void SendDel(XLine *x) anope_override