--- a/telephonyserverplugins/common_tsy/commontsy/src/mmsms/cmmussdtsy.cpp Sat Nov 06 18:38:12 2010 +0200
+++ b/telephonyserverplugins/common_tsy/commontsy/src/mmsms/cmmussdtsy.cpp Thu Nov 18 15:42:16 2010 +0200
@@ -551,7 +551,8 @@
TFLOGSTRING("TSY: CMmUssdTsy::CompleteReceiveMessage.\n" );
TTsyReqHandle reqHandle = iTsyReqHandleStore->GetTsyReqHandle(
EMultimodeUssdReceiveMessage );
-
+
+
if ( ( EMultimodeUssdReqHandleUnknown != reqHandle ) )
{
// reset req handle. Returns the deleted req handle
@@ -573,7 +574,9 @@
{
aError = KErrArgument;
}
+
}
+
ReqCompleted( reqHandle, aError );
}
}
@@ -616,16 +619,8 @@
if ( iUssdNoFdnCheckFlag == EUssdNoFdnCheckNotUsed )
{
// Send request to the Domestic OS layer.
- if(EFalse == iSendToDefaultHandler)
- {
- ret = iMmPhone->MessageManager()->HandleRequestL(
- EMobileUssdMessagingSendMessage, &package );
- }
- else //default handler
- {
- ret = iMmPhone->MessageManager()->HandleRequestL(
- EMobileUssdMessagingSendMessageDefaultHandler, &package );
- }
+ ret = iMmPhone->MessageManager()->HandleRequestL(
+ EMobileUssdMessagingSendMessage, &package );
}
iSsTransactionOngoing = ETrue;
}
@@ -770,8 +765,10 @@
if ( KErrNone == aError )
{
if(EFalse == iSendToDefaultHandler)
- {
- SetSessionOwnerByTsyHandle( reqHandle );
+ {
+ //This is the non-default handler case. Session owner remains the same.
+ //This session owner will get the newly received message.
+ SetSessionOwnerByTsyHandleAndIpc( reqHandle, NULL );
}
else // default handler
{