From b16e16ac1bae4ac5494778b4b8a7009febb58137 Mon Sep 17 00:00:00 2001 From: danieldg Date: Fri, 23 Oct 2009 22:47:39 +0000 Subject: Make User::uuid and User::server const git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11962 e03df62e-2008-0410-955e-edbf42e46eb7 --- src/modules/m_spanningtree/treeserver.cpp | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/modules/m_spanningtree/treeserver.cpp') diff --git a/src/modules/m_spanningtree/treeserver.cpp b/src/modules/m_spanningtree/treeserver.cpp index 5c7162094..38d91f54c 100644 --- a/src/modules/m_spanningtree/treeserver.cpp +++ b/src/modules/m_spanningtree/treeserver.cpp @@ -27,7 +27,7 @@ * no socket associated with it. Its version string is our own local version. */ TreeServer::TreeServer(SpanningTreeUtilities* Util, std::string Name, std::string Desc, const std::string &id) - : ServerName(Name.c_str()), ServerDesc(Desc), Utils(Util) + : ServerName(Name.c_str()), ServerDesc(Desc), Utils(Util), ServerUser(ServerInstance->FakeClient) { age = ServerInstance->Time(); bursting = false; @@ -48,7 +48,7 @@ TreeServer::TreeServer(SpanningTreeUtilities* Util, std::string Name, std::strin * its ping counters so that it will be pinged one minute from now. */ TreeServer::TreeServer(SpanningTreeUtilities* Util, std::string Name, std::string Desc, const std::string &id, TreeServer* Above, TreeSocket* Sock, bool Hide) - : Parent(Above), ServerName(Name.c_str()), ServerDesc(Desc), Socket(Sock), Utils(Util), Hidden(Hide) + : Parent(Above), ServerName(Name.c_str()), ServerDesc(Desc), Socket(Sock), Utils(Util), ServerUser(new FakeUser(id, Name)), Hidden(Hide) { age = ServerInstance->Time(); bursting = true; @@ -350,10 +350,19 @@ bool TreeServer::Tidy() return true; } +CullResult TreeServer::cull() +{ + if (ServerUser != ServerInstance->FakeClient) + ServerUser->cull(); + return classbase::cull(); +} + TreeServer::~TreeServer() { /* We'd better tidy up after ourselves, eh? */ this->DelHashEntry(); + if (ServerUser != ServerInstance->FakeClient) + delete ServerUser; server_hash::iterator iter = Utils->sidlist.find(GetID()); if (iter != Utils->sidlist.end()) -- cgit v1.3.1-10-gc9f91