From a85a9b8c115762ce691e9cfb3c1175725a920c87 Mon Sep 17 00:00:00 2001 From: w00t Date: Sat, 5 Apr 2008 16:39:08 +0000 Subject: Fix a cosmetic issue: 'oper type does not have access' git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9359 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/mode.cpp | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/mode.cpp b/src/mode.cpp index 6805c348c..342345869 100644 --- a/src/mode.cpp +++ b/src/mode.cpp @@ -579,12 +579,23 @@ void ModeParser::Process(const char* const* parameters, int pcnt, User *user, bo */ if ((IS_LOCAL(user)) && (modehandlers[handler_id]->NeedsOper()) && (!user->HasModePermission(modehandlers[handler_id]->GetModeChar(), type))) { - user->WriteNumeric(481, "%s :Permission Denied - Oper type %s does not have access to %sset %s mode %c", - user->nick, - user->oper, - adding ? "" : "un", - type == MODETYPE_CHANNEL ? "channel" : "user", - modehandlers[handler_id]->GetModeChar()); + if (IS_OPER(user)) + { + user->WriteNumeric(481, "%s :Permission Denied - Oper type %s does not have access to %sset %s mode %c", + user->nick, + user->oper, + adding ? "" : "un", + type == MODETYPE_CHANNEL ? "channel" : "user", + modehandlers[handler_id]->GetModeChar()); + } + else + { + user->WriteNumeric(481, "%s :Permission Denied - Only operators may %sset %s mode %c", + user->nick, + adding ? "" : "un", + type == MODETYPE_CHANNEL ? "channel" : "user", + modehandlers[handler_id]->GetModeChar()); + } continue; } -- cgit v1.2.3