]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/modules/m_spanningtree/override_map.cpp
m_spanningtree Fix routing of ROUTE_TYPE_MESSAGE messages
[user/henk/code/inspircd.git] / src / modules / m_spanningtree / override_map.cpp
index 2b655097d5fe497c6c6d55f0919b0cceeb36bd2b..a9b68eb9b18b238ed5569b9b83907fdf08ec8f8c 100644 (file)
@@ -77,13 +77,15 @@ void CommandMap::ShowMap(TreeServer* Current, User* user, int depth, int &line,
 
        if (user->IsOper() || !Utils->FlatLinks)
                depth = depth + 2;
-       for (unsigned int q = 0; q < Current->ChildCount(); q++)
+
+       const TreeServer::ChildServers& servers = Current->GetChildren();
+       for (TreeServer::ChildServers::const_iterator i = servers.begin(); i != servers.end(); ++i)
        {
-               TreeServer* child = Current->GetChild(q);
+               TreeServer* child = *i;
                if (!user->IsOper()) {
                        if (child->Hidden)
                                continue;
-                       if ((Utils->HideULines) && (ServerInstance->ULine(child->GetName())))
+                       if ((Utils->HideULines) && (child->IsULine()))
                                continue;
                }
                ShowMap(child, user, depth, line, names, maxnamew, stats);
@@ -107,11 +109,11 @@ CmdResult CommandMap::Handle(const std::vector<std::string>& parameters, User* u
                TreeServer* s = Utils->FindServerMask(parameters[0]);
                if (!s)
                {
-                       user->WriteNumeric(ERR_NOSUCHSERVER, "%s %s :No such server", user->nick.c_str(), parameters[0].c_str());
+                       user->WriteNumeric(ERR_NOSUCHSERVER, "%s :No such server", parameters[0].c_str());
                        return CMD_FAILURE;
                }
 
-               if (s != Utils->TreeRoot)
+               if (!s->IsRoot())
                        return CMD_SUCCESS;
        }