]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_samode.cpp
Convert WriteNumeric() calls to pass the parameters of the numeric as method parameters
[user/henk/code/inspircd.git] / src / modules / m_samode.cpp
index caf1f27c48c57646ec9d51f8ea2d70b4017b751a..bcb876d5b41906c5ca20383517b807852cd210a7 100644 (file)
@@ -42,14 +42,12 @@ class CommandSamode : public Command
                        User* target = ServerInstance->FindNickOnly(parameters[0]);
                        if ((!target) || (target->registered != REG_ALL))
                        {
-                               user->WriteNumeric(ERR_NOSUCHNICK, "%s %s :No such nick/channel", user->nick.c_str(), parameters[0].c_str());
+                               user->WriteNumeric(Numerics::NoSuchNick(parameters[0]));
                                return CMD_FAILURE;
                        }
-               }
-               User* target = ServerInstance->FindNick(parameters[0]);
-               if ((target) && (target != user))
-               {
-                       if (!user->HasPrivPermission("users/samode-usermodes", true))
+
+                       // Changing the modes of another user requires a special permission
+                       if ((target != user) && (!user->HasPrivPermission("users/samode-usermodes", true)))
                                return CMD_FAILURE;
                }
 
@@ -101,7 +99,7 @@ class ModuleSaMode : public Module
        void Prioritize()
        {
                Module *override = ServerInstance->Modules->Find("m_override.so");
-               ServerInstance->Modules->SetPriority(this, I_OnPreMode, PRIORITY_BEFORE, &override);
+               ServerInstance->Modules->SetPriority(this, I_OnPreMode, PRIORITY_BEFORE, override);
        }
 };