summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAttila Molnar <attilamolnar@hush.com>2014-03-14 13:04:10 +0100
committerAttila Molnar <attilamolnar@hush.com>2014-03-14 13:04:10 +0100
commitadb26a4e882d317de4e4135f414b7002cafe07a4 (patch)
treedef07b4f4a086b1024e3a07c550b0b795a0559c5 /src
parentda45f24ff1ab4fbac1b674c820796e9b3850a380 (diff)
Change allocation of UserManager::uuidlist to be physically part of the object containing it
Diffstat (limited to 'src')
-rw-r--r--src/helperfuncs.cpp4
-rw-r--r--src/usermanager.cpp4
-rw-r--r--src/users.cpp6
3 files changed, 6 insertions, 8 deletions
diff --git a/src/helperfuncs.cpp b/src/helperfuncs.cpp
index 850eaf4c0..567806efc 100644
--- a/src/helperfuncs.cpp
+++ b/src/helperfuncs.cpp
@@ -59,9 +59,9 @@ User* InspIRCd::FindNickOnly(const std::string &nick)
User *InspIRCd::FindUUID(const std::string &uid)
{
- user_hash::iterator finduuid = this->Users->uuidlist->find(uid);
+ user_hash::iterator finduuid = this->Users->uuidlist.find(uid);
- if (finduuid == this->Users->uuidlist->end())
+ if (finduuid == this->Users->uuidlist.end())
return NULL;
return finduuid->second;
diff --git a/src/usermanager.cpp b/src/usermanager.cpp
index 12db0dde2..2a9f02cfd 100644
--- a/src/usermanager.cpp
+++ b/src/usermanager.cpp
@@ -27,7 +27,6 @@
UserManager::UserManager()
: clientlist(new user_hash)
- , uuidlist(new user_hash)
, unregistered_count(0)
{
}
@@ -40,7 +39,6 @@ UserManager::~UserManager()
}
delete clientlist;
- delete uuidlist;
}
/* add a client connection to the sockets list */
@@ -208,7 +206,7 @@ void UserManager::QuitUser(User* user, const std::string& quitreason, const std:
else
ServerInstance->Logs->Log("USERS", LOG_DEFAULT, "ERROR: Nick not found in clientlist, cannot remove: " + user->nick);
- uuidlist->erase(user->uuid);
+ uuidlist.erase(user->uuid);
user->PurgeEmptyChannels();
}
diff --git a/src/users.cpp b/src/users.cpp
index 1c13ac4ef..e760a3fbc 100644
--- a/src/users.cpp
+++ b/src/users.cpp
@@ -79,7 +79,7 @@ User::User(const std::string& uid, Server* srv, int type)
ServerInstance->Logs->Log("USERS", LOG_DEBUG, "New UUID for user: %s", uuid.c_str());
- if (!ServerInstance->Users->uuidlist->insert(std::make_pair(uuid, this)).second)
+ if (!ServerInstance->Users->uuidlist.insert(std::make_pair(uuid, this)).second)
throw CoreException("Duplicate UUID "+std::string(uuid)+" in User constructor");
}
@@ -100,7 +100,7 @@ LocalUser::LocalUser(int myfd, irc::sockets::sockaddrs* client, irc::sockets::so
User::~User()
{
- if (ServerInstance->Users->uuidlist->find(uuid) != ServerInstance->Users->uuidlist->end())
+ if (ServerInstance->FindUUID(uuid))
ServerInstance->Logs->Log("USERS", LOG_DEFAULT, "User destructor for %s called without cull", uuid.c_str());
}
@@ -344,7 +344,7 @@ CullResult FakeUser::cull()
// Fake users don't quit, they just get culled.
quitting = true;
// Fake users are not inserted into UserManager::clientlist, they're only in the uuidlist
- ServerInstance->Users->uuidlist->erase(uuid);
+ ServerInstance->Users->uuidlist.erase(uuid);
return User::cull();
}