Added CUser::IsBeingDeleted() to allow for different messaging when a user is being deleted vs detaching or disconnecting

git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@703 726aef4b-f618-498e-8847-2d620e286838
This commit is contained in:
prozacx
2006-03-19 22:44:10 +00:00
parent 57fb9fc867
commit 0dd418181a
5 changed files with 24 additions and 5 deletions

View File

@@ -34,6 +34,10 @@ CZNC::~CZNC() {
delete m_vpListeners[b];
}
for (map<CString,CUser*>::iterator a = m_msUsers.begin(); a != m_msUsers.end(); a++) {
a->second->SetBeingDeleted(true);
}
m_Manager.Cleanup();
DeleteUsers();
delete m_pModules;
@@ -76,9 +80,11 @@ int CZNC::Loop() {
if (m_ssDelUsers.size()) {
for (set<CUser*>::iterator it = m_ssDelUsers.begin(); it != m_ssDelUsers.end(); it++) {
CUser* pUser = *it;
pUser->SetBeingDeleted(true);
#ifdef _MODULES
if (GetModules().OnDeleteUser(*pUser)) {
pUser->SetBeingDeleted(false);
continue;
}
#endif
@@ -250,6 +256,7 @@ bool CZNC::WritePemFile() {
void CZNC::DeleteUsers() {
for (map<CString,CUser*>::iterator a = m_msUsers.begin(); a != m_msUsers.end(); a++) {
a->second->SetBeingDeleted(true);
delete a->second;
}