Really add znc-trafficstats.patch this time

This commit is contained in:
Nick Bebout 2010-06-16 22:16:37 +00:00
parent b604954661
commit f79a160c96

31
znc-trafficstats.patch Normal file
View File

@ -0,0 +1,31 @@
--- znc-0.090/znc.cpp 2010-05-10 12:45:15.000000000 -0500
+++ trunk/znc.cpp 2010-06-16 16:43:48.706323545 -0500
@@ -1914,18 +1914,18 @@
}
for (CSockManager::const_iterator it = m_Manager.begin(); it != m_Manager.end(); ++it) {
+ CUser *pUser = NULL;
if ((*it)->GetSockName().Left(5) == "IRC::") {
- CIRCSock *p = (CIRCSock *) *it;
- ret[p->GetUser()->GetUserName()].first += p->GetBytesRead();
- ret[p->GetUser()->GetUserName()].second += p->GetBytesWritten();
- uiUsers_in += p->GetBytesRead();
- uiUsers_out += p->GetBytesWritten();
+ pUser = ((CIRCSock *) *it)->GetUser();
} else if ((*it)->GetSockName().Left(5) == "USR::") {
- CClient *p = (CClient *) *it;
- ret[p->GetUser()->GetUserName()].first += p->GetBytesRead();
- ret[p->GetUser()->GetUserName()].second += p->GetBytesWritten();
- uiUsers_in += p->GetBytesRead();
- uiUsers_out += p->GetBytesWritten();
+ pUser = ((CClient*) *it)->GetUser();
+ }
+
+ if (pUser) {
+ ret[pUser->GetUserName()].first += (*it)->GetBytesRead();
+ ret[pUser->GetUserName()].second += (*it)->GetBytesWritten();
+ uiUsers_in += (*it)->GetBytesRead();
+ uiUsers_out += (*it)->GetBytesWritten();
} else {
uiZNC_in += (*it)->GetBytesRead();
uiZNC_out += (*it)->GetBytesWritten();