From c35089b8cfd108ccfb85077f74236e704ba7cf55 Mon Sep 17 00:00:00 2001 From: Attila Molnar Date: Fri, 13 Jun 2014 15:59:37 +0200 Subject: Make the default ProtocolInterface instance part of class InspIRCd The protocol module no longer has to delete it on load and construct it on unload, only assign a new value to ServerInstance->PI --- src/inspircd.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'src/inspircd.cpp') diff --git a/src/inspircd.cpp b/src/inspircd.cpp index cb428c32a..50c79fb7b 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -134,7 +134,6 @@ void InspIRCd::Cleanup() DeleteZero(this->Modules); DeleteZero(this->SNO); DeleteZero(this->Config); - DeleteZero(this->PI); SocketEngine::Deinit(); Logs->CloseLogs(); DeleteZero(this->Logs); @@ -232,6 +231,7 @@ void InspIRCd::WritePID(const std::string &filename) InspIRCd::InspIRCd(int argc, char** argv) : ConfigFileName(INSPIRCD_CONFIG_PATH "/inspircd.conf"), + PI(&DefaultProtocolInterface), /* Functor pointer initialisation. * @@ -256,7 +256,6 @@ InspIRCd::InspIRCd(int argc, char** argv) : // Initialize so that if we exit before proper initialization they're not deleted this->Logs = 0; - this->PI = 0; this->Users = 0; this->Config = 0; this->SNO = 0; @@ -274,9 +273,6 @@ InspIRCd::InspIRCd(int argc, char** argv) : SocketEngine::Init(); - /* Default implementation does nothing */ - this->PI = new ProtocolInterface; - // Create base manager classes early, so nothing breaks this->Users = new UserManager; -- cgit v1.3.1-10-gc9f91