]> jfr.im git - irc/rizon/znc.git/commitdiff
Removed thousands of redundant checks for m_pUser in CClient::ReadLine().
authorkroimon <redacted>
Sun, 28 Sep 2008 01:03:06 +0000 (01:03 +0000)
committerkroimon <redacted>
Sun, 28 Sep 2008 01:03:06 +0000 (01:03 +0000)
We already checked for it on line 144 which should be enough.

git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@1220 726aef4b-f618-498e-8847-2d620e286838

Client.cpp

index 34ee53ad3a3a4a9e3a4f3665e5d2de3b2215118c..a1403ac575fb1ca881f0bbe3da7e3a684cacdafa 100644 (file)
@@ -150,24 +150,22 @@ void CClient::ReadLine(const CString& sData) {
                PutStatus("Hello.  How may I help you?");
                return;
        } else if (sCommand.CaseCmp("DETACH") == 0) {
-               if (m_pUser) {
-                       CString sChan = sLine.Token(1);
-
-                       if (sChan.empty()) {
-                               PutStatusNotice("Usage: /detach <#chan>");
-                               return;
-                       }
+               CString sChan = sLine.Token(1);
 
-                       CChan* pChan = m_pUser->FindChan(sChan);
-                       if (!pChan) {
-                               PutStatusNotice("You are not on [" + sChan + "]");
-                               return;
-                       }
+               if (sChan.empty()) {
+                       PutStatusNotice("Usage: /detach <#chan>");
+                       return;
+               }
 
-                       pChan->DetachUser();
-                       PutStatusNotice("Detached from [" + sChan + "]");
+               CChan* pChan = m_pUser->FindChan(sChan);
+               if (!pChan) {
+                       PutStatusNotice("You are not on [" + sChan + "]");
                        return;
                }
+
+               pChan->DetachUser();
+               PutStatusNotice("Detached from [" + sChan + "]");
+               return;
        } else if (sCommand.CaseCmp("PING") == 0) {
                CString sTarget = sLine.Token(1);
 
@@ -188,36 +186,34 @@ void CClient::ReadLine(const CString& sData) {
                        sChans.LeftChomp();
                }
 
-               if (m_pUser) {
-                       VCString vChans;
-                       sChans.Split(",", vChans, false);
-                       sChans.clear();
-
-                       for (unsigned int a = 0; a < vChans.size(); a++) {
-                               CString sChannel = vChans[a];
-                               MODULECALL(OnUserJoin(sChannel, sKey), m_pUser, this, continue);
+               VCString vChans;
+               sChans.Split(",", vChans, false);
+               sChans.clear();
 
-                               CChan* pChan = m_pUser->FindChan(sChannel);
+               for (unsigned int a = 0; a < vChans.size(); a++) {
+                       CString sChannel = vChans[a];
+                       MODULECALL(OnUserJoin(sChannel, sKey), m_pUser, this, continue);
 
-                               if (pChan) {
-                                       pChan->JoinUser(false, sKey);
-                                       continue;
-                               }
+                       CChan* pChan = m_pUser->FindChan(sChannel);
 
-                               if (!sChannel.empty()) {
-                                       sChans += (sChans.empty()) ? sChannel : CString("," + sChannel);
-                               }
+                       if (pChan) {
+                               pChan->JoinUser(false, sKey);
+                               continue;
                        }
 
-                       if (sChans.empty()) {
-                               return;
+                       if (!sChannel.empty()) {
+                               sChans += (sChans.empty()) ? sChannel : CString("," + sChannel);
                        }
+               }
+
+               if (sChans.empty()) {
+                       return;
+               }
 
-                       sLine = "JOIN " + sChans;
+               sLine = "JOIN " + sChans;
 
-                       if (!sKey.empty()) {
-                               sLine += " " + sKey;
-                       }
+               if (!sKey.empty()) {
+                       sLine += " " + sKey;
                }
        } else if (sCommand.CaseCmp("PART") == 0) {
                CString sChan = sLine.Token(1);
@@ -233,14 +229,12 @@ void CClient::ReadLine(const CString& sData) {
 
                MODULECALL(OnUserPart(sChan, sMessage), m_pUser, this, return);
 
-               if (m_pUser) {
-                       CChan* pChan = m_pUser->FindChan(sChan);
+               CChan* pChan = m_pUser->FindChan(sChan);
 
-                       if (pChan && !pChan->IsOn()) {
-                               PutStatusNotice("Removing channel [" + sChan + "]");
-                               m_pUser->DelChan(sChan);
-                               return;
-                       }
+               if (pChan && !pChan->IsOn()) {
+                       PutStatusNotice("Removing channel [" + sChan + "]");
+                       m_pUser->DelChan(sChan);
+                       return;
                }
 
                sLine = "PART " + sChan;
@@ -264,7 +258,7 @@ void CClient::ReadLine(const CString& sData) {
                CString sTarget = sLine.Token(1);
                CString sModes = sLine.Token(2, true);
 
-               if (m_pUser && m_pUser->IsChan(sTarget)) {
+               if (m_pUser->IsChan(sTarget)) {
                        CChan *pChan = m_pUser->FindChan(sTarget);
 
                        if (pChan && sModes.empty()) {
@@ -276,9 +270,7 @@ void CClient::ReadLine(const CString& sData) {
                        }
                }
        } else if (sCommand.CaseCmp("QUIT") == 0) {
-               if (m_pUser) {
-                       m_pUser->UserDisconnected(this);
-               }
+               m_pUser->UserDisconnected(this);
 
                Close();        // Treat a client quit as a detach
                return;         // Don't forward this msg.  We don't want the client getting us disconnected.
@@ -301,18 +293,16 @@ void CClient::ReadLine(const CString& sData) {
                        sMsg.LeftChomp();
                }
 
-               if ((!m_pUser) || (sTarget.CaseCmp(CString(m_pUser->GetStatusPrefix() + "status"))) == 0) {
+               if (sTarget.CaseCmp(CString(m_pUser->GetStatusPrefix() + "status")) == 0) {
                        return;
                }
 
                if (strncasecmp(sTarget.c_str(), m_pUser->GetStatusPrefix().c_str(), m_pUser->GetStatusPrefix().length()) == 0) {
 #ifdef _MODULES
-                       if (m_pUser) {
-                               CString sModule = sTarget;
-                               sModule.LeftChomp(m_pUser->GetStatusPrefix().length());
+                       CString sModule = sTarget;
+                       sModule.LeftChomp(m_pUser->GetStatusPrefix().length());
 
-                               CALLMOD(sModule, this, m_pUser, OnModNotice(sMsg));
-                       }
+                       CALLMOD(sModule, this, m_pUser, OnModNotice(sMsg));
 #endif
                        return;
                }
@@ -350,7 +340,7 @@ void CClient::ReadLine(const CString& sData) {
                }
 
                // Relay to the rest of the clients that may be connected to this user
-               if (m_pUser && m_pUser->IsChan(sTarget)) {
+               if (m_pUser->IsChan(sTarget)) {
                        vector<CClient*>& vClients = m_pUser->GetClients();
 
                        for (unsigned int a = 0; a < vClients.size(); a++) {
@@ -377,7 +367,7 @@ void CClient::ReadLine(const CString& sData) {
                        sCTCP.LeftChomp();
                        sCTCP.RightChomp();
 
-                       if (strncasecmp(sCTCP.c_str(), "DCC ", 4) == 0 && m_pUser && m_pUser->BounceDCCs()) {
+                       if (strncasecmp(sCTCP.c_str(), "DCC ", 4) == 0 && m_pUser->BounceDCCs()) {
                                CString sType = sCTCP.Token(1);
                                CString sFile = sCTCP.Token(2);
                                unsigned long uLongIP = strtoul(sCTCP.Token(3).c_str(), NULL, 10);
@@ -401,11 +391,7 @@ void CClient::ReadLine(const CString& sData) {
                                        // DCC SEND readme.txt 403120438 5550 1104
 
                                        if (strncasecmp(sTarget.c_str(), m_pUser->GetStatusPrefix().c_str(), m_pUser->GetStatusPrefix().length()) == 0) {
-                                               if ((!m_pUser) || (sTarget.CaseCmp(CString(m_pUser->GetStatusPrefix() + "status")) == 0)) {
-                                                       if (!m_pUser) {
-                                                               return;
-                                                       }
-
+                                               if (sTarget.CaseCmp(CString(m_pUser->GetStatusPrefix() + "status")) == 0) {
                                                        CString sPath = m_pUser->GetDLPath();
                                                        if (!CFile::Exists(sPath)) {
                                                                PutStatus("Could not create [" + sPath + "] directory.");
@@ -417,9 +403,7 @@ void CClient::ReadLine(const CString& sData) {
 
                                                        CString sLocalFile = sPath + "/" + sFile;
 
-                                                       if (m_pUser) {
-                                                               m_pUser->GetFile(GetNick(), CUtils::GetIP(uLongIP), uPort, sLocalFile, uFileSize);
-                                                       }
+                                                       m_pUser->GetFile(GetNick(), CUtils::GetIP(uLongIP), uPort, sLocalFile, uFileSize);
                                                } else {
                                                        MODULECALL(OnDCCUserSend(sTarget, uLongIP, uPort, sFile, uFileSize), m_pUser, this, return);
                                                }
@@ -436,7 +420,7 @@ void CClient::ReadLine(const CString& sData) {
 
                                        // Need to lookup the connection by port, filter the port, and forward to the user
                                        if (strncasecmp(sTarget.c_str(), m_pUser->GetStatusPrefix().c_str(), m_pUser->GetStatusPrefix().length()) == 0) {
-                                               if ((m_pUser) && (m_pUser->ResumeFile(uResumePort, uResumeSize))) {
+                                               if (m_pUser->ResumeFile(uResumePort, uResumeSize)) {
                                                        PutClient(":" + sTarget + "!znc@znc.in PRIVMSG " + GetNick() + " :\001DCC ACCEPT " + sFile + " " + CString(uResumePort) + " " + CString(uResumeSize) + "\001");
                                                } else {
                                                        PutStatus("DCC -> [" + GetNick() + "][" + sFile + "] Unable to find send to initiate resume.");
@@ -496,7 +480,7 @@ void CClient::ReadLine(const CString& sData) {
                                }
 
                                // Relay to the rest of the clients that may be connected to this user
-                               if (m_pUser && m_pUser->IsChan(sTarget)) {
+                               if (m_pUser->IsChan(sTarget)) {
                                        vector<CClient*>& vClients = m_pUser->GetClients();
 
                                        for (unsigned int a = 0; a < vClients.size(); a++) {
@@ -515,7 +499,7 @@ void CClient::ReadLine(const CString& sData) {
                        return;
                }
 
-               if ((m_pUser) && (sTarget.CaseCmp(CString(m_pUser->GetStatusPrefix() + "status")) == 0)) {
+               if (sTarget.CaseCmp(CString(m_pUser->GetStatusPrefix() + "status")) == 0) {
                        MODULECALL(OnStatusCommand(sMsg), m_pUser, this, return);
                        UserCommand(sMsg);
                        return;
@@ -523,12 +507,10 @@ void CClient::ReadLine(const CString& sData) {
 
                if (strncasecmp(sTarget.c_str(), m_pUser->GetStatusPrefix().c_str(), m_pUser->GetStatusPrefix().length()) == 0) {
 #ifdef _MODULES
-                       if (m_pUser) {
-                               CString sModule = sTarget;
-                               sModule.LeftChomp(m_pUser->GetStatusPrefix().length());
+                       CString sModule = sTarget;
+                       sModule.LeftChomp(m_pUser->GetStatusPrefix().length());
 
-                               CALLMOD(sModule, this, m_pUser, OnModCommand(sMsg));
-                       }
+                       CALLMOD(sModule, this, m_pUser, OnModCommand(sMsg));
 #endif
                        return;
                }
@@ -553,7 +535,7 @@ void CClient::ReadLine(const CString& sData) {
 
                // Relay to the rest of the clients that may be connected to this user
 
-               if (m_pUser && m_pUser->IsChan(sTarget)) {
+               if (m_pUser->IsChan(sTarget)) {
                        vector<CClient*>& vClients = m_pUser->GetClients();
 
                        for (unsigned int a = 0; a < vClients.size(); a++) {