diff options
| author | 2008-02-24 18:52:31 +0000 | |
|---|---|---|
| committer | 2008-02-24 18:52:31 +0000 | |
| commit | a36fa98300016380378100260a58b2f297a08f72 (patch) | |
| tree | 3ebf513dcc2b41929e535b0577ffee8792fc0a98 /src/inspircd.cpp | |
| parent | Add mutexes to this to make it a bit more threadsafe (diff) | |
More stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9026 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/inspircd.cpp')
| -rw-r--r-- | src/inspircd.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/inspircd.cpp b/src/inspircd.cpp index aaad2746a..de725d0e1 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -636,6 +636,20 @@ int InspIRCd::Run() static char window_title[100]; #endif + if (this->ConfigThread && this->ConfigThread->GetExitFlag()) + { + /* Rehash has completed */ + this->Logs->Log("CONFIG",DEBUG,"Detected ConfigThread exiting, tidying up..."); + delete ConfigThread; + this->XLines->CheckELines(); + this->XLines->ApplyLines(); + this->Res->Rehash(); + this->ResetMaxBans(); + InitializeDisabledCommands(Config->DisabledCommands, this); + FOREACH_MOD_I(this, I_OnRehash, OnRehash(Config->RehashUser, Config->RehashParameter)); + this->BuildISupport(); + } + /* time() seems to be a pretty expensive syscall, so avoid calling it too much. * Once per loop iteration is pleanty. */ |
