diff options
Diffstat (limited to 'include/inspircd.h')
-rw-r--r-- | include/inspircd.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/include/inspircd.h b/include/inspircd.h index 9f2ae630a..3d9002f53 100644 --- a/include/inspircd.h +++ b/include/inspircd.h @@ -401,11 +401,11 @@ class InspIRCd : public classbase /** Client list, a hash_map containing all clients, local and remote */ - user_hash clientlist; + user_hash* clientlist; /** Channel list, a hash_map containing all channels */ - chan_hash chanlist; + chan_hash* chanlist; /** Local client list, a vector containing only local clients */ @@ -1129,6 +1129,12 @@ class InspIRCd : public classbase */ void Cleanup(); + /** This copies the user and channel hash_maps into new hash maps. + * This frees memory used by the hash_map allocator (which it neglects + * to free, most of the time, using tons of ram) + */ + void RehashUsersAndChans(); + /** Begin execution of the server. * NOTE: this function NEVER returns. Internally, * after performing some initialisation routines, |