--- a/sipvoipprovider/svptransfer/src/svptransferstatecontext.cpp Tue May 25 12:31:20 2010 +0300
+++ b/sipvoipprovider/svptransfer/src/svptransferstatecontext.cpp Wed Jun 09 09:31:04 2010 +0300
@@ -967,22 +967,25 @@
HBufC8* recipient = NULL;
const CMceSession& session = iSVPSession->Session();
__ASSERT_ALWAYS( &session, User::Leave( KErrArgument ) );
-
- if ( iSVPSession->IsMobileOriginated() )
+
+ TBool isCLIROn = iSVPSession->IsCLIROnL();
+
+ if ( ( iSVPSession->IsMobileOriginated() && !isCLIROn )
+ || ( !iSVPSession->IsMobileOriginated() && isCLIROn ) )
{
- SVPDEBUG1( "CSVPTransferStateContext::CreateMceOutReferL(aTarget), MO case" )
- const TDesC8& recip = session.Recipient();
- __ASSERT_ALWAYS( &recip, User::Leave( KErrArgument ) );
- recipient = HBufC8::NewLC( recip.Length() );
- recipient->Des().Copy( recip );
+ SVPDEBUG1( "CSVPTransferStateContext::CreateMceOutReferL(aTarget), orig" )
+ const TDesC8& orig = session.Originator();
+ __ASSERT_ALWAYS( &orig, User::Leave( KErrArgument ) );
+ recipient = HBufC8::NewLC( orig.Length() );
+ recipient->Des().Copy( orig );
}
else
{
- SVPDEBUG1( "CSVPTransferStateContext::CreateMceOutReferL(aTarget), MT case" )
- const TDesC8& orig = session.Originator();
- __ASSERT_ALWAYS( &orig, User::Leave( KErrArgument ) );
- recipient = HBufC8::NewLC( orig.Length() );
- recipient->Des().Copy( orig );
+ SVPDEBUG1( "CSVPTransferStateContext::CreateMceOutReferL(aTarget), recip" )
+ const TDesC8& recip = session.Recipient();
+ __ASSERT_ALWAYS( &recip, User::Leave( KErrArgument ) );
+ recipient = HBufC8::NewLC( recip.Length() );
+ recipient->Des().Copy( recip );
}
// remove all extra parameters from recipient address