From 0babd8c0783242fc647cdcdfefb399c099e367ad Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Sat, 15 Mar 2014 15:38:09 +0100 Subject: [PATCH] Change allocation of InspIRCd::Timers to be physically part of the object containing it --- include/inspircd.h | 2 +- include/modules/dns.h | 2 +- src/coremods/core_dns.cpp | 2 +- src/inspircd.cpp | 5 +---- src/inspsocket.cpp | 2 +- src/modules/extra/m_pgsql.cpp | 2 +- src/modules/m_conn_join.cpp | 2 +- src/modules/m_spanningtree/utils.cpp | 2 +- src/timer.cpp | 6 +++--- 9 files changed, 11 insertions(+), 14 deletions(-) diff --git a/include/inspircd.h b/include/inspircd.h index 1ceb64693..a707eec73 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -371,7 +371,7 @@ class CoreExport InspIRCd /** Timer manager class, triggers Timer timer events */ - TimerManager* Timers; + TimerManager Timers; /** X-Line manager. Handles G/K/Q/E line setting, removal and matching */ diff --git a/include/modules/dns.h b/include/modules/dns.h index 7f863fcca..c76c53805 100644 --- a/include/modules/dns.h +++ b/include/modules/dns.h @@ -159,7 +159,7 @@ namespace DNS , id(0) , creator(mod) { - ServerInstance->Timers->AddTimer(this); + ServerInstance->Timers.AddTimer(this); } virtual ~Request() diff --git a/src/coremods/core_dns.cpp b/src/coremods/core_dns.cpp index 7b93c7bb3..30c736757 100644 --- a/src/coremods/core_dns.cpp +++ b/src/coremods/core_dns.cpp @@ -448,7 +448,7 @@ class MyManager : public Manager, public Timer, public EventHandler { for (int i = 0; i < MAX_REQUEST_ID; ++i) requests[i] = NULL; - ServerInstance->Timers->AddTimer(this); + ServerInstance->Timers.AddTimer(this); } ~MyManager() diff --git a/src/inspircd.cpp b/src/inspircd.cpp index 50899435b..5097960e8 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -140,7 +140,6 @@ void InspIRCd::Cleanup() DeleteZero(this->Config); DeleteZero(this->PI); DeleteZero(this->Threads); - DeleteZero(this->Timers); SocketEngine::Deinit(); Logs->CloseLogs(); DeleteZero(this->Logs); @@ -270,7 +269,6 @@ InspIRCd::InspIRCd(int argc, char** argv) : this->BanCache = 0; this->Modules = 0; this->stats = 0; - this->Timers = 0; this->Parser = 0; this->XLines = 0; this->Modes = 0; @@ -299,7 +297,6 @@ InspIRCd::InspIRCd(int argc, char** argv) : this->Modules = new ModuleManager(); dynamic_reference_base::reset_all(); this->stats = new serverstats(); - this->Timers = new TimerManager; this->Parser = new CommandParser; this->XLines = new XLineManager; @@ -719,7 +716,7 @@ void InspIRCd::Run() FOREACH_MOD(OnGarbageCollect, ()); } - Timers->TickTimers(TIME.tv_sec); + Timers.TickTimers(TIME.tv_sec); Users->DoBackgroundUserStuff(); if ((TIME.tv_sec % 5) == 0) diff --git a/src/inspsocket.cpp b/src/inspsocket.cpp index d15a1b6a5..f22645168 100644 --- a/src/inspsocket.cpp +++ b/src/inspsocket.cpp @@ -111,7 +111,7 @@ BufferedSocketError BufferedSocket::BeginConnect(const irc::sockets::sockaddrs& return I_ERR_NOMOREFDS; this->Timeout = new SocketTimeout(this->GetFd(), this, timeout, ServerInstance->Time()); - ServerInstance->Timers->AddTimer(this->Timeout); + ServerInstance->Timers.AddTimer(this->Timeout); ServerInstance->Logs->Log("SOCKET", LOG_DEBUG, "BufferedSocket::DoConnect success"); return I_ERR_NONE; diff --git a/src/modules/extra/m_pgsql.cpp b/src/modules/extra/m_pgsql.cpp index 9a8e63e57..e6abbfcf9 100644 --- a/src/modules/extra/m_pgsql.cpp +++ b/src/modules/extra/m_pgsql.cpp @@ -608,7 +608,7 @@ void SQLConn::DelayReconnect() if (!mod->retimer) { mod->retimer = new ReconnectTimer(mod); - ServerInstance->Timers->AddTimer(mod->retimer); + ServerInstance->Timers.AddTimer(mod->retimer); } } } diff --git a/src/modules/m_conn_join.cpp b/src/modules/m_conn_join.cpp index a5aba68df..631e5945c 100644 --- a/src/modules/m_conn_join.cpp +++ b/src/modules/m_conn_join.cpp @@ -46,7 +46,7 @@ class JoinTimer : public Timer : Timer(delay, ServerInstance->Time(), false) , user(u), channels(chans), ext(ex) { - ServerInstance->Timers->AddTimer(this); + ServerInstance->Timers.AddTimer(this); } bool Tick(time_t time) CXX11_OVERRIDE diff --git a/src/modules/m_spanningtree/utils.cpp b/src/modules/m_spanningtree/utils.cpp index 263a5db1e..ee6f3fe74 100644 --- a/src/modules/m_spanningtree/utils.cpp +++ b/src/modules/m_spanningtree/utils.cpp @@ -128,7 +128,7 @@ TreeServer* SpanningTreeUtilities::FindServerID(const std::string &id) SpanningTreeUtilities::SpanningTreeUtilities(ModuleSpanningTree* C) : Creator(C), TreeRoot(NULL) { - ServerInstance->Timers->AddTimer(&RefreshTimer); + ServerInstance->Timers.AddTimer(&RefreshTimer); } CullResult SpanningTreeUtilities::cull() diff --git a/src/timer.cpp b/src/timer.cpp index b897056e6..8e11ee4a7 100644 --- a/src/timer.cpp +++ b/src/timer.cpp @@ -25,15 +25,15 @@ void Timer::SetInterval(time_t newinterval) { - ServerInstance->Timers->DelTimer(this); + ServerInstance->Timers.DelTimer(this); secs = newinterval; SetTrigger(ServerInstance->Time() + newinterval); - ServerInstance->Timers->AddTimer(this); + ServerInstance->Timers.AddTimer(this); } Timer::~Timer() { - ServerInstance->Timers->DelTimer(this); + ServerInstance->Timers.DelTimer(this); } void TimerManager::TickTimers(time_t TIME) -- 2.39.5