diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-03-09 12:28:35 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-03-09 12:28:35 +0000 |
commit | 3a484a4afda5e7667843e109e2ff1e17786e3fb4 (patch) | |
tree | a670d02f329e1d1be1271b0333fe5d44700acc13 | |
parent | 98fd8145d87a16a8bca10102f42fe0de954af967 (diff) |
Correctly use iterators and pointer to ucrec
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3584 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r-- | src/modules/m_blockamsg.cpp | 4 | ||||
-rw-r--r-- | src/modules/m_nonicks.cpp | 19 |
2 files changed, 10 insertions, 13 deletions
diff --git a/src/modules/m_blockamsg.cpp b/src/modules/m_blockamsg.cpp index b3136ee75..8af55de0f 100644 --- a/src/modules/m_blockamsg.cpp +++ b/src/modules/m_blockamsg.cpp @@ -121,8 +121,8 @@ public: if((*c == ',') && *(c+1) && (*(c+1) == '#')) targets++; - for(unsigned int i = 0; i < user->chans.size(); i++) - if(user->chans[i].channel) + for(std::vector<ucrec*>::iterator f = user->chans.begin(); f != user->chans.end(); f++) + if(((ucrec*)(*f))->channel) userchans++; // Check that this message wasn't already sent within a few seconds. diff --git a/src/modules/m_nonicks.cpp b/src/modules/m_nonicks.cpp index 5f7be1580..a252dc6da 100644 --- a/src/modules/m_nonicks.cpp +++ b/src/modules/m_nonicks.cpp @@ -64,20 +64,17 @@ class ModuleNoNickChange : public Module irc::string me = Srv->GetServerName().c_str(); if (server == me) { - for (unsigned int i =0; i < user->chans.size(); i++) + for (std::vector<ucrec*>::iterator i = user->chans.begin(); i != user->chans.end(); i++) { - if (user->chans[i].channel != NULL) + if (((ucrec*)(*i))->channel != NULL) { - chanrec* curr = user->chans[i].channel; - if (curr->IsCustomModeSet('N')) + chanrec* curr = ((ucrec*)(*i))->channel; + if ((curr->IsCustomModeSet('N')) && (!*user->oper)) { - if (!*user->oper) - { - // don't allow the nickchange, theyre on at least one channel with +N set - // and theyre not an oper - WriteServ(user->fd,"447 %s :Can't change nickname while on %s (+N is set)",user->nick,curr->name); - return 1; - } + // don't allow the nickchange, theyre on at least one channel with +N set + // and theyre not an oper + WriteServ(user->fd,"447 %s :Can't change nickname while on %s (+N is set)",user->nick,curr->name); + return 1; } } } |