phoneengine/phonemodel/src/cpephonemodel.cpp
branchRCL_3
changeset 81 c26cc2a7c548
parent 69 8baf28733c3d
--- a/phoneengine/phonemodel/src/cpephonemodel.cpp	Wed Sep 15 12:12:21 2010 +0300
+++ b/phoneengine/phonemodel/src/cpephonemodel.cpp	Wed Oct 13 14:31:22 2010 +0300
@@ -43,7 +43,6 @@
 // CONSTANTS
 const TInt KDriveProfile ( 6 );
 const TInt KPECallTimerOff = 0;
-const TInt KTimesToSplitValue = 16;
 
 // ==================== LOCAL FUNCTIONS ====================
 
@@ -97,8 +96,6 @@
     TEFLOGSTRING( KTAOBJECT, "CPEPhoneModel::ConstructL: 5" );
     iActiveStarter->StartUp();
     TEFLOGSTRING( KTAOBJECT, "CPEPhoneModel::ConstructL: 6" );
-    // Reserve needed callinfo and remoteinfo from heap.
-    iCallInfo = new ( ELeave ) RMobileCall::TMobileCallInfoV3;
     }// ConstructL
 
 // -----------------------------------------------------------------------------
@@ -148,7 +145,6 @@
     delete iCallHandling;
     delete iExternalDataHandler;
     delete iCallStackCutter;
-    delete iCallInfo;
 
     if ( iActiveStarter )
         {
@@ -971,7 +967,6 @@
             "PE cpephonemodel::sendmessage > iEngineMonitor.HandleError: messageName=%s, CallId=%d",
         messageName2.Ptr( ), aCallId );
         #endif
-        SetCallError( aCallId );
         TPEErrorInfo errorInfo;
     	errorInfo.iErrorCode = errorCode;
     	errorInfo.iCallId = aCallId;
@@ -984,7 +979,6 @@
             KTAERROR, 
             "PE cpephonemodel::sendmessage > iEngineMonitor.HandleError: messageName=EPEMessageCallHandlingError, CallId=%d"
         , aCallId );
-        SetCallError( aCallId );
 	    TPEErrorInfo errorInfo = iEngineInfo->ErrorInfo();
     	errorInfo.iCallId = aCallId;
     	errorInfo.iErrorType = EPECcp;
@@ -1002,7 +996,6 @@
         TEFLOGSTRING( 
             KTAERROR, 
             "PE cpephonemodel::sendmessage > iEngineMonitor.HandleError: messageName=EPEMessageServiceHandlingError" );
-        SetCallError( aCallId );
         TPEErrorInfo errorInfo = iEngineInfo->ErrorInfo();
         errorInfo.iCallId = aCallId;
         errorInfo.iErrorType = EPECch;
@@ -1136,7 +1129,11 @@
             break;
                 
         case MEngineMonitor::EPEMessageAudioOutputPreferenceChanged:
-            errorCode = iMessageHandler->HandleRoutePreferenceChanged();
+            //Don't handle route preference mode change if no active calls exist.
+            if ( iCallHandling->GetNumberOfCalls() )
+                {
+                errorCode = iMessageHandler->HandleRoutePreferenceChanged();
+                }
             break;
                     
         case MEngineMonitor::EPEMessageConferenceIdle:
@@ -1512,25 +1509,4 @@
     return KErrNone;
     }
 
-// -----------------------------------------------------------------------------
-// SetCallError
-// -----------------------------------------------------------------------------
-//
-void CPEPhoneModel::SetCallError( TInt aCallId )
-    {
-    TInt callError = KErrNone;
-    if ( iCallHandling )
-        {
-        TInt err = iCallHandling->GetCallInfo( *iCallInfo, aCallId );
-        
-        if ( err == KErrNone && ( iCallInfo->iExitCode & 0xFFFF0000 ) &&
-                aCallId > KErrNotFound ) 
-            {
-            callError = ( iCallInfo->iExitCode >> KTimesToSplitValue ); 
-            //Set protocol spesific error code to EngineInfo
-            EngineInfo()->SetProtocolError( callError, aCallId );
-            }
-        }
-    }
-	
 // End of File