]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/users.cpp
Extra debug
[user/henk/code/inspircd.git] / src / users.cpp
index 0ece0aaddd7163ef6313ad79eb7a2fe5c61bc673..387658ac6d3deb92625a4cfce970703a3a71e693 100644 (file)
@@ -989,46 +989,29 @@ void User::InvalidateCache()
 
 bool User::ForceNickChange(const char* newnick)
 {
-       /*
-        * XXX this makes no sense..
-        * why do we do nothing for change on users not REG_ALL?
-        * why do we trigger events twice for everyone previously (and just them now)
-        * i think the first if () needs removing totally, or? -- w00t
-        */
-       if (this->registered != REG_ALL)
-       {
-               int MOD_RESULT = 0;
-
-               this->InvalidateCache();
+       int MOD_RESULT = 0;
 
-               FOREACH_RESULT(I_OnUserPreNick,OnUserPreNick(this, newnick));
+       this->InvalidateCache();
 
-               if (MOD_RESULT)
-               {
-                       ServerInstance->stats->statsCollisions++;
-                       return false;
-               }
+       FOREACH_RESULT(I_OnUserPreNick,OnUserPreNick(this, newnick));
 
-               if (ServerInstance->XLines->MatchesLine("Q",newnick))
-               {
-                       ServerInstance->stats->statsCollisions++;
-                       return false;
-               }
+       if (MOD_RESULT)
+       {
+               ServerInstance->stats->statsCollisions++;
+               return false;
        }
-       else
+
+       std::deque<classbase*> dummy;
+       Command* nickhandler = ServerInstance->Parser->GetHandler("NICK");
+       if (nickhandler) // wtfbbq, when would this not be here
        {
-               std::deque<classbase*> dummy;
-               Command* nickhandler = ServerInstance->Parser->GetHandler("NICK");
-               if (nickhandler) // wtfbbq, when would this not be here
-               {
-                       nickhandler->HandleInternal(1, dummy);
-                       bool result = (ServerInstance->Parser->CallHandler("NICK", &newnick, 1, this) == CMD_SUCCESS);
-                       nickhandler->HandleInternal(0, dummy);
-                       return result;
-               }
+               nickhandler->HandleInternal(1, dummy);
+               bool result = (ServerInstance->Parser->CallHandler("NICK", &newnick, 1, this) == CMD_SUCCESS);
+               nickhandler->HandleInternal(0, dummy);
+               return result;
        }
 
-       // Unreachable.
+       // Unreachable, we hope
        return false;
 }