--- a/multimediacommsengine/mmcesrv/mmcemediamanager/src/mcesdpsession.cpp Mon Mar 08 21:43:55 2010 +0000
+++ b/multimediacommsengine/mmcesrv/mmcemediamanager/src/mcesdpsession.cpp Sun Mar 14 13:11:20 2010 +0000
@@ -1539,9 +1539,11 @@
newMaster->iContext;
newMaster->iRequestedContext = NULL;
oldMaster->iRequestedContext = NULL;
-
+ if( aForkedSession )
+ {
newMaster->MediaSession()->Merge( *oldMaster->MediaSession(),
KMceDeepMergeYes );
+ }
MCEMM_DEBUG("context switch performed")
}
@@ -1722,3 +1724,22 @@
return count;
}
+void CMceSdpSession::UpdateSecureStreamL( CMceComSession& aSession )
+ {
+ MCEMM_DEBUG("CMceSdpSession::UpdateSecureStream() : Entry ")
+ RPointerArray< CSdpMediaField >& mediaLines = iSdpRemoteMediaFields;
+ RPointerArray <CMceComMediaStream>& streams = aSession.Streams();
+ CSdpMediaField* mediaLine = NULL;
+ CMceComMediaStream* aStream = NULL;
+ for ( TInt index = 0; index < mediaLines.Count(); index++ )
+ {
+ mediaLine = mediaLines[ index ];
+ aStream = MediaSlotInUse( index, streams );
+ if( aSession.SecureSession() && aStream )
+ {
+ aStream = aStream->OfferStream();
+ aSession.SecureSession()->ForceUpdateSecureStreamL(*aStream, *mediaLine );
+ }
+ }
+ MCEMM_DEBUG("CMceSdpSession::UpdateSecureStream() : Exit ")
+ }