Pārlūkot izejas kodu

#IQRV #comment [Module] Interactioncontext::SafeDelete

gifur 4 gadi atpakaļ
vecāks
revīzija
e96092dfed
1 mainītis faili ar 5 papildinājumiem un 8 dzēšanām
  1. 5 8
      Module/mod_initiativetransfer/FlowControlFSM.cpp

+ 5 - 8
Module/mod_initiativetransfer/FlowControlFSM.cpp

@@ -70,7 +70,6 @@ ErrorCodeEnum CFlowControlFSM::OnInit()
 		}
 		if (Error != Error_Succeed) {
 			m_pClient->GetFunction()->CloseSession();
-			m_pClient->SafeDelete();
 			m_pClient = NULL;
 		}
 	} else {
@@ -85,10 +84,11 @@ ErrorCodeEnum CFlowControlFSM::OnInit()
 	return Error;
 }
 ErrorCodeEnum CFlowControlFSM::OnExit()
-{
-	m_pClient->GetFunction()->CloseSession();
-	m_pClient->SafeDelete();
-	m_pClient = NULL;
+{ 
+	if (m_pClient != NULL) {
+        m_pClient->GetFunction()->CloseSession();
+        m_pClient = NULL;
+	}
 
 	RemoveStateHooker(this);
 
@@ -104,7 +104,6 @@ BOOL CFlowControlFSM::ReConnectionAssistchan()
 	if (m_pClient != NULL)
 	{
 		m_pClient->GetFunction()->CloseSession();
-		m_pClient->SafeDelete();
 		m_pClient = NULL;
 		Dbg("Close AssistChannel Session ");
 	}
@@ -130,7 +129,6 @@ BOOL CFlowControlFSM::ReConnectionAssistchan()
 			{
 				LOG_TRACE("BeginState biz channel failed!");
 				m_pClient->GetFunction()->CloseSession();
-				m_pClient->SafeDelete();
 				m_pClient = NULL;
 				return FALSE;
 			}
@@ -145,7 +143,6 @@ BOOL CFlowControlFSM::ReConnectionAssistchan()
 			{
 				LOG_TRACE("BeginState biz channel failed!");
 				m_pClient->GetFunction()->CloseSession();
-				m_pClient->SafeDelete();
 				m_pClient = NULL;
 				return FALSE;
 			}