mirror of
https://github.com/znc/znc.git
synced 2026-03-28 17:42:41 +01:00
Delete the clients and modules before the user
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@649 726aef4b-f618-498e-8847-2d620e286838
This commit is contained in:
26
User.cpp
26
User.cpp
@@ -45,9 +45,6 @@ CUser::CUser(const CString& sUserName) {
|
||||
}
|
||||
|
||||
CUser::~CUser() {
|
||||
#ifdef _MODULES
|
||||
delete m_pModules;
|
||||
#endif
|
||||
for (unsigned int a = 0; a < m_vServers.size(); a++) {
|
||||
delete m_vServers[a];
|
||||
}
|
||||
@@ -56,9 +53,8 @@ CUser::~CUser() {
|
||||
delete m_vChans[b];
|
||||
}
|
||||
|
||||
for (unsigned int c = 0; c < m_vClients.size(); c++) {
|
||||
CZNC::Get().GetManager().DelSockByAddr(m_vClients[c]);
|
||||
}
|
||||
DelClients();
|
||||
DelModules();
|
||||
|
||||
CZNC::Get().GetManager().DelCronByAddr(m_pBackNickTimer);
|
||||
CZNC::Get().GetManager().DelCronByAddr(m_pAwayNickTimer);
|
||||
@@ -66,6 +62,24 @@ CUser::~CUser() {
|
||||
CZNC::Get().GetManager().DelCronByAddr(m_pJoinTimer);
|
||||
}
|
||||
|
||||
#ifdef _MODULES
|
||||
void CUser::DelModules() {
|
||||
if (m_pModules) {
|
||||
delete m_pModules;
|
||||
m_pModules = NULL;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
void CUser::DelClients() {
|
||||
for (unsigned int c = 0; c < m_vClients.size(); c++) {
|
||||
CClient* pClient = m_vClients[c];
|
||||
CZNC::Get().GetManager().DelSockByAddr(pClient);
|
||||
}
|
||||
|
||||
m_vClients.clear();
|
||||
}
|
||||
|
||||
bool CUser::OnBoot() {
|
||||
#ifdef _MODULES
|
||||
return GetModules().OnBoot();
|
||||
|
||||
Reference in New Issue
Block a user