diff options
author | attilamolnar <attilamolnar@hush.com> | 2012-07-04 20:26:24 +0200 |
---|---|---|
committer | attilamolnar <attilamolnar@hush.com> | 2012-10-02 23:44:21 +0200 |
commit | 6b929c6dbb3d36c3873ab9911ad4d8a46ddbdc99 (patch) | |
tree | 1affc94bfd9d6dc99f6fe7e9010ff8ca331aebac /src | |
parent | a3313987f31a074a4f5f1d455df1ee15a81362b4 (diff) |
m_spanningtree Use iterators in CAPAB handler and when generating reply to spanningtree related /stats, use std::find() in TreeServer::DelChild()
Diffstat (limited to 'src')
-rw-r--r-- | src/modules/m_spanningtree/capab.cpp | 8 | ||||
-rw-r--r-- | src/modules/m_spanningtree/override_stats.cpp | 7 | ||||
-rw-r--r-- | src/modules/m_spanningtree/treeserver.cpp | 10 |
3 files changed, 12 insertions, 13 deletions
diff --git a/src/modules/m_spanningtree/capab.cpp b/src/modules/m_spanningtree/capab.cpp index 378695091..40769df3d 100644 --- a/src/modules/m_spanningtree/capab.cpp +++ b/src/modules/m_spanningtree/capab.cpp @@ -37,12 +37,12 @@ std::string TreeSocket::MyModules(int filter) std::string capabilities; sort(modlist.begin(),modlist.end()); - for (unsigned int i = 0; i < modlist.size(); i++) + for (std::vector<std::string>::const_iterator i = modlist.begin(); i != modlist.end(); ++i) { - if (i) + if (i != modlist.begin()) capabilities.push_back(proto_version > 1201 ? ' ' : ','); - capabilities.append(modlist[i]); - Module* m = ServerInstance->Modules->Find(modlist[i]); + capabilities.append(*i); + Module* m = ServerInstance->Modules->Find(*i); if (m && proto_version > 1201) { Version v = m->GetVersion(); diff --git a/src/modules/m_spanningtree/override_stats.cpp b/src/modules/m_spanningtree/override_stats.cpp index 83691c151..688661b80 100644 --- a/src/modules/m_spanningtree/override_stats.cpp +++ b/src/modules/m_spanningtree/override_stats.cpp @@ -33,11 +33,12 @@ ModResult ModuleSpanningTree::OnStats(char statschar, User* user, string_list &r { if ((statschar == 'c') || (statschar == 'n')) { - for (unsigned int i = 0; i < Utils->LinkBlocks.size(); i++) + for (std::vector<reference<Link> >::iterator i = Utils->LinkBlocks.begin(); i != Utils->LinkBlocks.end(); ++i) { - results.push_back(std::string(ServerInstance->Config->ServerName)+" 213 "+user->nick+" "+statschar+" *@"+(Utils->LinkBlocks[i]->HiddenFromStats ? "<hidden>" : Utils->LinkBlocks[i]->IPAddr)+" * "+Utils->LinkBlocks[i]->Name.c_str()+" "+ConvToStr(Utils->LinkBlocks[i]->Port)+" "+(Utils->LinkBlocks[i]->Hook.empty() ? "plaintext" : Utils->LinkBlocks[i]->Hook)); + Link* L = *i; + results.push_back(std::string(ServerInstance->Config->ServerName)+" 213 "+user->nick+" "+statschar+" *@"+(L->HiddenFromStats ? "<hidden>" : L->IPAddr)+" * "+(*i)->Name.c_str()+" "+ConvToStr(L->Port)+" "+(L->Hook.empty() ? "plaintext" : L->Hook)); if (statschar == 'c') - results.push_back(std::string(ServerInstance->Config->ServerName)+" 244 "+user->nick+" H * * "+Utils->LinkBlocks[i]->Name.c_str()); + results.push_back(std::string(ServerInstance->Config->ServerName)+" 244 "+user->nick+" H * * "+L->Name.c_str()); } return MOD_RES_DENY; } diff --git a/src/modules/m_spanningtree/treeserver.cpp b/src/modules/m_spanningtree/treeserver.cpp index 65e119149..493b05ebf 100644 --- a/src/modules/m_spanningtree/treeserver.cpp +++ b/src/modules/m_spanningtree/treeserver.cpp @@ -321,13 +321,11 @@ void TreeServer::AddChild(TreeServer* Child) bool TreeServer::DelChild(TreeServer* Child) { - for (std::vector<TreeServer*>::iterator a = Children.begin(); a != Children.end(); a++) + std::vector<TreeServer*>::iterator it = std::find(Children.begin(), Children.end(), Child); + if (it != Children.end()) { - if (*a == Child) - { - Children.erase(a); - return true; - } + Children.erase(it); + return true; } return false; } |