--- a/phoneengine/phonemodel/src/cpephonemodel.cpp Fri Feb 19 22:50:26 2010 +0200
+++ b/phoneengine/phonemodel/src/cpephonemodel.cpp Fri Mar 12 15:42:40 2010 +0200
@@ -1225,24 +1225,41 @@
TEFLOGSTRING( KTAOBJECT, "CPEPhoneModel::DelayMessageSending" );
TBool sendingDelayed( EFalse );
-
- if ( MEngineMonitor::EPEMessageInitiatedEmergencyCall == aMessage )
+
+ switch ( aMessage )
{
- iEngineInfo->SetIsSwitchToOperationOngoing( EFalse );
- if ( iCallStackCutter )
+ case MEngineMonitor::EPEMessageInitiatedEmergencyCall:
{
- delete iCallStackCutter;
- iCallStackCutter = NULL;
+ iEngineInfo->SetIsSwitchToOperationOngoing( EFalse );
+ sendingDelayed = ETrue;
+ }
+ break;
+ case MEngineMonitor::EPEMessageColpNumberAvailable:
+ {
+ sendingDelayed = ETrue;
}
- TRAPD( err, iCallStackCutter = CIdle::NewL( CActive::EPriorityHigh ) );
- if ( !err )
- {
- iCallBackMessage = aMessage;
- iCallBackCallId = aCallId;
- iCallStackCutter->Start( TCallBack( CallBackMessageSend , this ) );
- }
- sendingDelayed = ETrue;
+ break;
+ default:
+ // Other messages cause no action.
+ break;
}
+
+ if ( sendingDelayed )
+ {
+ if ( iCallStackCutter )
+ {
+ delete iCallStackCutter;
+ iCallStackCutter = NULL;
+ }
+ TRAPD( err, iCallStackCutter = CIdle::NewL( CActive::EPriorityHigh ) );
+ if ( !err )
+ {
+ iCallBackMessage = aMessage;
+ iCallBackCallId = aCallId;
+ iCallStackCutter->Start( TCallBack( CallBackMessageSend , this ) );
+ }
+ }
+
return sendingDelayed;
}