diff -r e30d4a1b8bad -r c26cc2a7c548 phoneengine/phonemodel/src/cpephonemodel.cpp --- 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