]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_spanningtree/save.cpp
Introduce ModeProcessFlags, can be passed to ModeParser::Process() to indicate local...
[user/henk/code/inspircd.git] / src / modules / m_spanningtree / save.cpp
index de9cb73165c0f87b72244433001b3adff289e1fe..216a7e5f1e96fc556e133a898f886d010f4fbd60 100644 (file)
 
 
 #include "inspircd.h"
-#include "socket.h"
-#include "xline.h"
-#include "socketengine.h"
 
-#include "main.h"
 #include "utils.h"
-#include "treeserver.h"
 #include "treesocket.h"
 
-/* $ModDep: m_spanningtree/main.h m_spanningtree/utils.h m_spanningtree/treeserver.h m_spanningtree/treesocket.h */
+/* $ModDep: m_spanningtree/utils.h m_spanningtree/treeserver.h m_spanningtree/treesocket.h */
 
 /**
  * SAVE command - force nick change to UID on timestamp match
@@ -40,11 +35,11 @@ bool TreeSocket::ForceNick(const std::string &prefix, parameterlist &params)
        User* u = ServerInstance->FindNick(params[0]);
        time_t ts = atol(params[1].c_str());
 
-       if (u && u->age == ts)
+       if ((u) && (!IS_SERVER(u)) && (u->age == ts))
        {
                Utils->DoOneToAllButSender(prefix,"SAVE",params,prefix);
 
-               if (!u->ForceNickChange(u->uuid.c_str()))
+               if (!u->ForceNickChange(u->uuid))
                {
                        ServerInstance->Users->QuitUser(u, "Nickname collision");
                }