diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-04-26 15:14:05 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-04-26 15:14:05 +0000 |
commit | 90b9864a0ec58f1ad5afdd9bdd7dc51039c23562 (patch) | |
tree | 0e662a435d91c78ab19f4eebbc80393446f6d64b /src/commands.cpp | |
parent | 1f56002af538fe6e2ddaecb96add7053245ad3ad (diff) |
Added channel 'counter', increases speed of quits, parts, kicks
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1194 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/commands.cpp')
-rw-r--r-- | src/commands.cpp | 23 |
1 files changed, 10 insertions, 13 deletions
diff --git a/src/commands.cpp b/src/commands.cpp index 9f3013546..a50fdf666 100644 --- a/src/commands.cpp +++ b/src/commands.cpp @@ -385,12 +385,13 @@ void handle_kill(char **parameters, int pcnt, userrec *user) if (iter != clientlist.end()) { log(DEBUG,"deleting user hash value %d",iter->second); - if ((iter->second) && (user->registered == 7)) { - delete iter->second; - } clientlist.erase(iter); } - purge_empty_chans(); + if (u->registered == 7) + { + purge_empty_chans(u); + } + delete u; } else { @@ -934,14 +935,10 @@ void handle_quit(char **parameters, int pcnt, userrec *user) if (iter != clientlist.end()) { clientlist.erase(iter); - log(DEBUG,"deleting user hash value %d",iter->second); - //if ((user) && (user->registered == 7)) { - //delete user; - //} } if (user->registered == 7) { - purge_empty_chans(); + purge_empty_chans(user); } } @@ -2048,13 +2045,13 @@ void handle_Q(char token,char* params,serverrec* source,serverrec* reply, char* if (iter != clientlist.end()) { log(DEBUG,"deleting user hash value %d",iter->second); - if ((iter->second) && (user->registered == 7)) { - delete iter->second; - } clientlist.erase(iter); } - purge_empty_chans(); + if (user->registered == 7) + { + purge_empty_chans(user); + } } } |