summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2007-10-31 15:53:03 +0000
committerw00t <w00t@e03df62e-2008-0410-955e-edbf42e46eb7>2007-10-31 15:53:03 +0000
commit7a60f99d070ce67ad2dfbb2193f1d82e2d0def12 (patch)
tree7d3b99006e126ebdf8652f93318c767aec9771d3
parent0c3eeb1ae4888d0e761f852c0073ab57ad628d0b (diff)
Reorder creation of objects so:
1) they are all done in the same place 2) calling InspIRCd::Exit() early on (before initialising a few things is done) doesn't crash us ;p git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8426 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--src/inspircd.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp
index f671c9545..2f00b9f2e 100644
--- a/src/inspircd.cpp
+++ b/src/inspircd.cpp
@@ -324,7 +324,14 @@ InspIRCd::InspIRCd(int argc, char** argv)
this->uuidlist = new user_hash();
this->chanlist = new chan_hash();
+
this->Config = new ServerConfig(this);
+ this->SNO = new SnomaskManager(this);
+ this->Modules = new ModuleManager(this);
+ this->stats = new serverstats();
+ this->Timers = new TimerManager(this);
+ this->Parser = new CommandParser(this);
+ this->XLines = new XLineManager(this);
this->Config->argv = argv;
this->Config->argc = argc;
@@ -337,7 +344,7 @@ InspIRCd::InspIRCd(int argc, char** argv)
this->Config->opertypes.clear();
this->Config->operclass.clear();
- this->SNO = new SnomaskManager(this);
+
this->TIME = this->OLDTIME = this->startup_time = time(NULL);
this->time_delta = 0;
srand(this->TIME);
@@ -425,14 +432,7 @@ InspIRCd::InspIRCd(int argc, char** argv)
/* Set the finished argument values */
Config->nofork = do_nofork;
Config->forcedebug = do_debug;
- Config->writelog = !do_nolog;
-
- this->Modules = new ModuleManager(this);
- this->stats = new serverstats();
- this->Timers = new TimerManager(this);
- this->Parser = new CommandParser(this);
- this->XLines = new XLineManager(this);
-
+ Config->writelog = !do_nolog;
Config->ClearStack();
Config->Read(true, NULL);