diff -r 594d59766373 -r 7d48bed6ce0c convergedcallengine/cce/src/ccceconferencecall.cpp --- a/convergedcallengine/cce/src/ccceconferencecall.cpp Thu Aug 19 10:28:14 2010 +0300 +++ b/convergedcallengine/cce/src/ccceconferencecall.cpp Tue Aug 31 15:45:17 2010 +0300 @@ -194,7 +194,7 @@ iConferenceCall = iPluginManager.GetPluginL( call->ImplementationUid() )->NewConferenceL( ServiceId(), *this ); - + if(iConferenceCall) { iConferenceCall->AddCallL( &call->GetCCPCall() ); @@ -286,10 +286,11 @@ for( TInt i = 0; i < array.Count(); i++ ) { + // *call ownership is not transfered. const CCCECall* call = iCallContainer.GetCall( array[i] ); // Check if cce call matching to ccp call is available - iCallArray.Append( call ); + iCallArray.Append( call ); // Ignore return value; iCallParameters->SetServiceId( call->ServiceId() ); CCELOGSTRING("CCCEConferenceCall:: Call added to conferencecall"); @@ -390,14 +391,12 @@ TInt CCCEConferenceCall::GetCallArray( RPointerArray& aCallArray ) { TInt err( KErrNotFound ); - - for (TInt a = 0; a < iCallArray.Count(); a++) + TInt count = iCallArray.Count(); + aCallArray.Reserve(count); + for (TInt a = 0; a < count; a++) { - aCallArray.Append( iCallArray[a] ); - err = KErrNone; + err= aCallArray.Append( iCallArray[a] ); } - - return err; } @@ -631,8 +630,8 @@ // --------------------------------------------------------------------------- // TTimeIntervalSeconds CCCEConferenceCall::CallDuration() const - { + { return iCCEDurationTimer->NumberOfBeats(); - } + } // End of file