diff -r a5ac35ca6d81 -r 91f50911ea81 multimediacommsengine/mmcesrv/mmceserver/src/mcesipmanager.cpp --- a/multimediacommsengine/mmcesrv/mmceserver/src/mcesipmanager.cpp Tue May 11 16:34:40 2010 +0300 +++ b/multimediacommsengine/mmcesrv/mmceserver/src/mcesipmanager.cpp Tue May 25 13:07:26 2010 +0300 @@ -1084,5 +1084,21 @@ } } } + + // Update orphan subsessions + RPointerArray& orphanSubSessions = iOrphanSubSessions->SubSessions(); + TInt orphanSubSessionCount = orphanSubSessions.Count(); + + for ( TInt j = 0; j < orphanSubSessionCount; ++j ) + { + CSIPProfile& subSessionProfile = orphanSubSessions[ j ]->Profile(); + if ( &subSessionProfile == &aOldProfile ) + { + MCESRV_DEBUG_DVALUE("update orphan subsession profile, j", j ) + MCESRV_DEBUG_DVALUES("oldProfile", (TInt)&aOldProfile, + "newProfile", (TInt)&aNewProfile ) + orphanSubSessions[ j ]->SetProfile( aNewProfile ); + } + } MCESRV_DEBUG("CMceSipManager::UpdateProfileToSubSessions, Exit") }