]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
Change return type of Channel::GetUsers() to reference from pointer as it is never...
authorAttila Molnar <attilamolnar@hush.com>
Mon, 14 Jul 2014 14:04:38 +0000 (16:04 +0200)
committerAttila Molnar <attilamolnar@hush.com>
Mon, 14 Jul 2014 14:04:38 +0000 (16:04 +0200)
20 files changed:
include/channels.h
src/coremods/core_who.cpp
src/mode.cpp
src/modules.cpp
src/modules/m_auditorium.cpp
src/modules/m_channames.cpp
src/modules/m_check.cpp
src/modules/m_clearchan.cpp
src/modules/m_deaf.cpp
src/modules/m_delayjoin.cpp
src/modules/m_delaymsg.cpp
src/modules/m_hostcycle.cpp
src/modules/m_httpd_stats.cpp
src/modules/m_ircv3.cpp
src/modules/m_repeat.cpp
src/modules/m_silence.cpp
src/modules/m_spanningtree/netburst.cpp
src/modules/m_spanningtree/utils.cpp
src/modules/m_sslmodes.cpp
src/users.cpp

index e3b38a2dbe1dfc1ea93ac26c35122a02e64c89c4..37f0eb431f4ae0dd271736d8d4544875e46c0d92 100644 (file)
@@ -166,7 +166,7 @@ class CoreExport Channel : public Extensible, public InviteBase<Channel>
         *
         * @return This function returns pointer to a map of User pointers (CUList*).
         */
-       const UserMembList* GetUsers() const { return &userlist; }
+       const UserMembList& GetUsers() const { return userlist; }
 
        /** Returns true if the user given is on the given channel.
         * @param user The user to look for
index 6f4bc088e604419e56f4c51f3228a4c2fcfe44b4..d39c07520d93e07e02c592e878a6562507c1c0bf 100644 (file)
@@ -325,9 +325,8 @@ CmdResult CommandWho::Handle (const std::vector<std::string>& parameters, User *
                        bool inside = ch->HasUser(user);
 
                        /* who on a channel. */
-                       const UserMembList *cu = ch->GetUsers();
-
-                       for (UserMembCIter i = cu->begin(); i != cu->end(); i++)
+                       const UserMembList& cu = ch->GetUsers();
+                       for (UserMembCIter i = cu.begin(); i != cu.end(); ++i)
                        {
                                /* None of this applies if we WHO ourselves */
                                if (user != i->first)
index 3d2b8e5c4bb83c78ba2f774be21de0502134a2b1..52d7d4fb5c1601da07c346f69558a938390403ea 100644 (file)
@@ -915,8 +915,8 @@ void ModeHandler::RemoveMode(Channel* channel, irc::modestacker& stack)
 
 void PrefixMode::RemoveMode(Channel* chan, irc::modestacker& stack)
 {
-       const UserMembList* userlist = chan->GetUsers();
-       for (UserMembCIter i = userlist->begin(); i != userlist->end(); ++i)
+       const UserMembList& userlist = chan->GetUsers();
+       for (UserMembCIter i = userlist.begin(); i != userlist.end(); ++i)
        {
                if (i->second->hasMode(this->GetModeChar()))
                        stack.Push(this->GetModeChar(), i->first->nick);
index edcb243e27b93e4243ff50214d7fd44aeff4e122..62bdedcfdbc9ed4b62814fa44fc8099005ecd59f 100644 (file)
@@ -391,8 +391,8 @@ void ModuleManager::DoSafeUnload(Module* mod)
                ++c;
                mod->OnCleanup(TYPE_CHANNEL, chan);
                chan->doUnhookExtensions(items);
-               const UserMembList* users = chan->GetUsers();
-               for(UserMembCIter mi = users->begin(); mi != users->end(); mi++)
+               const UserMembList& users = chan->GetUsers();
+               for (UserMembCIter mi = users.begin(); mi != users.end(); ++mi)
                        mi->second->doUnhookExtensions(items);
        }
 
index 60bdd258277ab325751c29079a5eb5e0693b764d..40226d0020ea39f171c8aab90519c6a9e3560acf 100644 (file)
@@ -103,8 +103,8 @@ class ModuleAuditorium : public Module
                if (IsVisible(memb))
                        return;
 
-               const UserMembList* users = memb->chan->GetUsers();
-               for(UserMembCIter i = users->begin(); i != users->end(); i++)
+               const UserMembList& users = memb->chan->GetUsers();
+               for (UserMembCIter i = users.begin(); i != users.end(); ++i)
                {
                        if (IS_LOCAL(i->first) && !CanSee(i->first, memb))
                                excepts.insert(i->first);
@@ -140,8 +140,8 @@ class ModuleAuditorium : public Module
                        // this channel should not be considered when listing my neighbors
                        i = include.erase(i);
                        // however, that might hide me from ops that can see me...
-                       const UserMembList* users = memb->chan->GetUsers();
-                       for(UserMembCIter j = users->begin(); j != users->end(); j++)
+                       const UserMembList& users = memb->chan->GetUsers();
+                       for(UserMembCIter j = users.begin(); j != users.end(); ++j)
                        {
                                if (IS_LOCAL(j->first) && CanSee(j->first, memb))
                                        exception[j->first] = true;
index 3a27cab73eb211c6cc801b31f968ccc20e3fc87c..1eb080ada2cddd20679399a4ce25a95704689f55 100644 (file)
@@ -132,8 +132,8 @@ class ModuleChannelNames : public Module
        {
                if (badchan)
                {
-                       const UserMembList* users = memb->chan->GetUsers();
-                       for(UserMembCIter i = users->begin(); i != users->end(); i++)
+                       const UserMembList& users = memb->chan->GetUsers();
+                       for (UserMembCIter i = users.begin(); i != users.end(); ++i)
                                if (i->first != memb->user)
                                        except_list.insert(i->first);
                }
index 35901f8d5f751ae26371a7cf97eeaf0e28b0f3d3..a2c0b2e2c83cbf108ef9c7358ff1137eb62ab51d 100644 (file)
@@ -224,10 +224,10 @@ class CommandCheck : public Command
 
                        /* now the ugly bit, spool current members of a channel. :| */
 
-                       const UserMembList *ulist= targchan->GetUsers();
+                       const UserMembList& ulist = targchan->GetUsers();
 
                        /* note that unlike /names, we do NOT check +i vs in the channel */
-                       for (UserMembCIter i = ulist->begin(); i != ulist->end(); i++)
+                       for (UserMembCIter i = ulist.begin(); i != ulist.end(); ++i)
                        {
                                /*
                                 * Unlike Asuka, I define a clone as coming from the same host. --w00t
index d7dceaf95c43018e4124ee97381038cce6303457..69ae0080031d84ec50297f98a4418a18884b1bcb 100644 (file)
@@ -170,8 +170,8 @@ class ModuleClearChan : public Module
                        }
                }
 
-               const UserMembList* users = cmd.activechan->GetUsers();
-               for (UserMembCIter i = users->begin(); i != users->end(); ++i)
+               const UserMembList& users = cmd.activechan->GetUsers();
+               for (UserMembCIter i = users.begin(); i != users.end(); ++i)
                {
                        LocalUser* curr = IS_LOCAL(i->first);
                        if (!curr)
@@ -200,8 +200,8 @@ class ModuleClearChan : public Module
        {
                // Hide the KICK from all non-opers
                User* leaving = memb->user;
-               const UserMembList* users = memb->chan->GetUsers();
-               for (UserMembCIter i = users->begin(); i != users->end(); ++i)
+               const UserMembList& users = memb->chan->GetUsers();
+               for (UserMembCIter i = users.begin(); i != users.end(); ++i)
                {
                        User* curr = i->first;
                        if ((IS_LOCAL(curr)) && (!curr->IsOper()) && (curr != leaving))
index 9800b32a98438ef98297a4de05fc93361dfd8ed9..5c4f7b2b60cb8601cfd7c90542a48d4710e8522e 100644 (file)
@@ -66,7 +66,6 @@ class ModuleDeaf : public Module
                        return MOD_RES_PASSTHRU;
 
                Channel* chan = static_cast<Channel*>(dest);
-               const UserMembList *ulist = chan->GetUsers();
                bool is_bypasschar = (deaf_bypasschars.find(text[0]) != std::string::npos);
                bool is_bypasschar_uline = (deaf_bypasschars_uline.find(text[0]) != std::string::npos);
 
@@ -77,7 +76,8 @@ class ModuleDeaf : public Module
                if (!deaf_bypasschars_uline.empty() && is_bypasschar)
                        return MOD_RES_PASSTHRU;
 
-               for (UserMembCIter i = ulist->begin(); i != ulist->end(); i++)
+               const UserMembList& ulist = chan->GetUsers();
+               for (UserMembCIter i = ulist.begin(); i != ulist.end(); ++i)
                {
                        /* not +d ? */
                        if (!i->first->IsModeSet(m1))
index 0a883265fbceb3774607a3e05c4b3bfc01c63448..f830daf4b363a1d7748e130576278224208ab852 100644 (file)
@@ -66,8 +66,8 @@ ModeAction DelayJoinMode::OnModeChange(User* source, User* dest, Channel* channe
                 * Make all users visible, as +D is being removed. If we don't do this,
                 * they remain permanently invisible on this channel!
                 */
-               const UserMembList* names = channel->GetUsers();
-               for (UserMembCIter n = names->begin(); n != names->end(); ++n)
+               const UserMembList& users = channel->GetUsers();
+               for (UserMembCIter n = users.begin(); n != users.end(); ++n)
                        creator->OnText(n->first, channel, TYPE_CHANNEL, "", 0, empty);
        }
        channel->SetMode(this, adding);
@@ -94,8 +94,8 @@ ModResult ModuleDelayJoin::OnNamesListItem(User* issuer, Membership* memb, std::
 
 static void populate(CUList& except, Membership* memb)
 {
-       const UserMembList* users = memb->chan->GetUsers();
-       for(UserMembCIter i = users->begin(); i != users->end(); i++)
+       const UserMembList& users = memb->chan->GetUsers();
+       for (UserMembCIter i = users.begin(); i != users.end(); ++i)
        {
                if (i->first == memb->user || !IS_LOCAL(i->first))
                        continue;
index 1730663c5b75fc478c2dc8cf0e9033f3f52601f4..3384e110743c389a834b38d45c894534ac4c3213 100644 (file)
@@ -73,8 +73,8 @@ void DelayMsgMode::OnUnset(User* source, Channel* chan)
        /*
         * Clean up metadata
         */
-       const UserMembList* names = chan->GetUsers();
-       for (UserMembCIter n = names->begin(); n != names->end(); ++n)
+       const UserMembList& users = chan->GetUsers();
+       for (UserMembCIter n = users.begin(); n != users.end(); ++n)
                jointime.set(n->second, 0);
 }
 
index d3646e89935cd71daba33afd6ca9f36e5bcf14d2..87f05a9ee3c760e7605cce06206349d946253556 100644 (file)
@@ -72,8 +72,8 @@ class ModuleHostCycle : public Module
                                        modeline.append(" ").append(user->nick);
                        }
 
-                       const UserMembList* ulist = c->GetUsers();
-                       for (UserMembList::const_iterator j = ulist->begin(); j != ulist->end(); ++j)
+                       const UserMembList& ulist = c->GetUsers();
+                       for (UserMembList::const_iterator j = ulist.begin(); j != ulist.end(); ++j)
                        {
                                LocalUser* u = IS_LOCAL(j->first);
                                if (u == NULL || u == user)
index 008c3f2cd884d8c1a30c3077264eeaf1f56bfef0..b160159fb64907d335309514ab27b2377e41348f 100644 (file)
@@ -155,16 +155,16 @@ class ModuleHttpStats : public Module
                                        Channel* c = i->second;
 
                                        data << "<channel>";
-                                       data << "<usercount>" << c->GetUsers()->size() << "</usercount><channelname>" << Sanitize(c->name) << "</channelname>";
+                                       data << "<usercount>" << c->GetUsers().size() << "</usercount><channelname>" << Sanitize(c->name) << "</channelname>";
                                        data << "<channeltopic>";
                                        data << "<topictext>" << Sanitize(c->topic) << "</topictext>";
                                        data << "<setby>" << Sanitize(c->setby) << "</setby>";
                                        data << "<settime>" << c->topicset << "</settime>";
                                        data << "</channeltopic>";
                                        data << "<channelmodes>" << Sanitize(c->ChanModes(true)) << "</channelmodes>";
-                                       const UserMembList* ulist = c->GetUsers();
 
-                                       for (UserMembCIter x = ulist->begin(); x != ulist->end(); ++x)
+                                       const UserMembList& ulist = c->GetUsers();
+                                       for (UserMembCIter x = ulist.begin(); x != ulist.end(); ++x)
                                        {
                                                Membership* memb = x->second;
                                                data << "<channelmember><uid>" << memb->user->uuid << "</uid><privs>"
index 5cb2ab6b131bc6f3f51e6ccb02a8311406848f58..17572423d381eb1e44741f62b690e66347ffb997 100644 (file)
@@ -50,8 +50,8 @@ class ModuleIRCv3 : public Module
                std::set<User*> already_sent;
                for (IncludeChanList::const_iterator i = chans.begin(); i != chans.end(); ++i)
                {
-                       const UserMembList* userlist = (*i)->chan->GetUsers();
-                       for (UserMembList::const_iterator m = userlist->begin(); m != userlist->end(); ++m)
+                       const UserMembList& userlist = (*i)->chan->GetUsers();
+                       for (UserMembList::const_iterator m = userlist.begin(); m != userlist.end(); ++m)
                        {
                                /*
                                 * Send the line if the channel member in question meets all of the following criteria:
@@ -134,8 +134,8 @@ class ModuleIRCv3 : public Module
                std::string line;
                std::string mode;
 
-               const UserMembList* userlist = memb->chan->GetUsers();
-               for (UserMembCIter it = userlist->begin(); it != userlist->end(); ++it)
+               const UserMembList& userlist = memb->chan->GetUsers();
+               for (UserMembCIter it = userlist.begin(); it != userlist.end(); ++it)
                {
                        // Send the extended join line if the current member is local, has the extended-join cap and isn't excepted
                        User* member = IS_LOCAL(it->first);
@@ -208,8 +208,8 @@ class ModuleIRCv3 : public Module
 
                std::string line = ":" + memb->user->GetFullHost() + " AWAY :" + memb->user->awaymsg;
 
-               const UserMembList* userlist = memb->chan->GetUsers();
-               for (UserMembCIter it = userlist->begin(); it != userlist->end(); ++it)
+               const UserMembList& userlist = memb->chan->GetUsers();
+               for (UserMembCIter it = userlist.begin(); it != userlist.end(); ++it)
                {
                        // Send the away notify line if the current member is local, has the away-notify cap and isn't excepted
                        User* member = IS_LOCAL(it->first);
index d8fccbffc05bbb8d82a912c1fa2440c80075ca0c..6ad3a6aa7ed9846e1e0d6af87547804948008af2 100644 (file)
@@ -129,8 +129,8 @@ class RepeatMode : public ParamMode<RepeatMode, SimpleExtItem<ChannelSettings> >
        void OnUnset(User* source, Channel* chan)
        {
                // Unset the per-membership extension when the mode is removed
-               const UserMembList* users = chan->GetUsers();
-               for (UserMembCIter i = users->begin(); i != users->end(); ++i)
+               const UserMembList& users = chan->GetUsers();
+               for (UserMembCIter i = users.begin(); i != users.end(); ++i)
                        MemberInfoExt.unset(i->second);
        }
 
index 5e157420ea500fb7593fb55351d6e9159f0bad7d..6ba748d2f019a83dff08e5a274c2f9b5f718db8c 100644 (file)
@@ -315,9 +315,9 @@ class ModuleSilence : public Module
        void OnBuildExemptList(MessageType message_type, Channel* chan, User* sender, char status, CUList &exempt_list, const std::string &text)
        {
                int public_silence = (message_type == MSG_PRIVMSG ? SILENCE_CHANNEL : SILENCE_CNOTICE);
-               const UserMembList *ulist = chan->GetUsers();
 
-               for (UserMembCIter i = ulist->begin(); i != ulist->end(); i++)
+               const UserMembList& ulist = chan->GetUsers();
+               for (UserMembCIter i = ulist.begin(); i != ulist.end(); ++i)
                {
                        if (IS_LOCAL(i->first))
                        {
index f96e47d6053ea0722f12d56798cb2ea7467cbd8a..f583a9d8fd7a90622daee968be3ffd57cd7a025d 100644 (file)
@@ -167,9 +167,9 @@ void TreeSocket::SendServers(TreeServer* Current, TreeServer* s)
 void TreeSocket::SendFJoins(Channel* c)
 {
        CommandFJoin::Builder fjoin(c);
-       const UserMembList *ulist = c->GetUsers();
 
-       for (UserMembCIter i = ulist->begin(); i != ulist->end(); ++i)
+       const UserMembList& ulist = c->GetUsers();
+       for (UserMembCIter i = ulist.begin(); i != ulist.end(); ++i)
        {
                Membership* memb = i->second;
                if (!fjoin.has_room(memb))
index d6dccba14b2e481e2416f4ed45740e5fd3366294..254b50dcc3b0d4aeb85aa64822033328b8a577fd 100644 (file)
@@ -166,9 +166,8 @@ void SpanningTreeUtilities::GetListOfServersForChannel(Channel* c, TreeSocketSet
                        minrank = mh->GetPrefixRank();
        }
 
-       const UserMembList *ulist = c->GetUsers();
-
-       for (UserMembCIter i = ulist->begin(); i != ulist->end(); i++)
+       const UserMembList& ulist = c->GetUsers();
+       for (UserMembCIter i = ulist.begin(); i != ulist.end(); ++i)
        {
                if (IS_LOCAL(i->first))
                        continue;
index 6ac07434f7c0f9c2a7c615112ba35190042a4880..5f3fc9215abf28cc1a0c17abe13f35f7819716e7 100644 (file)
@@ -48,8 +48,8 @@ class SSLMode : public ModeHandler
                                        if (!API)
                                                return MODEACTION_DENY;
 
-                                       const UserMembList* userlist = channel->GetUsers();
-                                       for(UserMembCIter i = userlist->begin(); i != userlist->end(); i++)
+                                       const UserMembList& userlist = channel->GetUsers();
+                                       for (UserMembCIter i = userlist.begin(); i != userlist.end(); ++i)
                                        {
                                                ssl_cert* cert = API->GetCertificate(i->first);
                                                if (!cert && !i->first->server->IsULine())
index abe0f8804b4f7765281387f2b943741aa6d0cfa5..039fdce572e85314659f8b9e30fafcf897e85323 100644 (file)
@@ -891,8 +891,8 @@ void User::WriteCommonRaw(const std::string &line, bool include_self)
        for (IncludeChanList::const_iterator v = include_c.begin(); v != include_c.end(); ++v)
        {
                Channel* c = (*v)->chan;
-               const UserMembList* ulist = c->GetUsers();
-               for (UserMembList::const_iterator i = ulist->begin(); i != ulist->end(); i++)
+               const UserMembList& ulist = c->GetUsers();
+               for (UserMembList::const_iterator i = ulist.begin(); i != ulist.end(); ++i)
                {
                        LocalUser* u = IS_LOCAL(i->first);
                        if (u && u->already_sent != LocalUser::already_sent_id)
@@ -931,8 +931,8 @@ void User::WriteCommonQuit(const std::string &normal_text, const std::string &op
        }
        for (IncludeChanList::const_iterator v = include_c.begin(); v != include_c.end(); ++v)
        {
-               const UserMembList* ulist = (*v)->chan->GetUsers();
-               for (UserMembList::const_iterator i = ulist->begin(); i != ulist->end(); i++)
+               const UserMembList& ulist = (*v)->chan->GetUsers();
+               for (UserMembList::const_iterator i = ulist.begin(); i != ulist.end(); i++)
                {
                        LocalUser* u = IS_LOCAL(i->first);
                        if (u && (u->already_sent != uniq_id))