sysstatemgmt/systemstatemgr/sus/src/susemergencycallrfadaptation.cpp
branchRCL_3
changeset 22 8cb079868133
parent 21 ccb4f6b3db21
--- a/sysstatemgmt/systemstatemgr/sus/src/susemergencycallrfadaptation.cpp	Tue Aug 31 16:29:05 2010 +0300
+++ b/sysstatemgmt/systemstatemgr/sus/src/susemergencycallrfadaptation.cpp	Wed Sep 01 12:34:26 2010 +0100
@@ -278,6 +278,8 @@
 	DEBUGPRINT2A("CEmergencyCallRfAdaptationRequests processed the request with funtion id: %d", iCurrentMessage->Function());
 	iCurrentMessage->Complete(iStatus.Int());
 	DeleteAdaptationMessage();
+	iCurrentMessage = NULL;  
+
 	if( (iPendingEmergencyRequestsQueue.Count()) > 0 )
 		{
         CEmergencyAdaptationMessage *messageCopy = NULL;
@@ -293,6 +295,7 @@
 		{
         iCurrentMessage->Complete(aError);
 		DeleteAdaptationMessage();
+		iCurrentMessage = NULL;
 		}
 	
 	while( (iPendingEmergencyRequestsQueue.Count() > 0 ))
@@ -300,6 +303,7 @@
         Dequeue(iCurrentMessage);
         iCurrentMessage->Complete(aError);
         DeleteAdaptationMessage();
+        iCurrentMessage = NULL;
         }
 	
 	return KErrNone;
@@ -312,6 +316,7 @@
 		{
 		iCurrentMessage->Complete(KErrCancel);
 		DeleteAdaptationMessage();
+		iCurrentMessage = NULL;
 		}
 		
 	while( (iPendingEmergencyRequestsQueue.Count() > 0 ))
@@ -319,6 +324,7 @@
         Dequeue(iCurrentMessage);
         iCurrentMessage->Complete(KErrCancel);
         DeleteAdaptationMessage();
+        iCurrentMessage = NULL;
 		}
 	}
 
@@ -343,8 +349,7 @@
  */
 void CEmergencyCallRfAdaptation::DeleteAdaptationMessage()
     {
-	//Do not delete iCurrentMessage if it is owned by iAdaptationReservedMessageArray.
-	if(iCurrentMessage->IsMessageReserved())
+    if(iCurrentMessage->IsMessageReserved())
         {
         iCurrentMessage->UnsetMessageStatus(EMsgInUse);
         ++iReserveMsgCount;
@@ -352,8 +357,7 @@
     else
         {
         delete iCurrentMessage;
-		}
-	iCurrentMessage = NULL;
+        }    
     }
 
 void CEmergencyCallRfAdaptation::Dequeue(CEmergencyAdaptationMessage *&aCurrentMessage)