phoneengine/callhandling/src/cpecallhandling.cpp
branchRCL_3
changeset 9 8871b09be73b
parent 1 838b0a10d15b
child 14 24062c24fe38
--- a/phoneengine/callhandling/src/cpecallhandling.cpp	Tue Feb 02 00:10:04 2010 +0200
+++ b/phoneengine/callhandling/src/cpecallhandling.cpp	Fri Feb 19 22:50:26 2010 +0200
@@ -833,10 +833,7 @@
 
     else if ( CallIdCheck::IsConference( aCallId ) )
         {
-        if( iConferenceCall )
-            {
-            errorCode = iConferenceCall->HangUp();
-            }
+        ReleaseConference();
         }
     return errorCode;
     }
@@ -855,12 +852,7 @@
     
     RejectCall(); // Rejects ringing call if one exists.
 
-    if ( iConferenceCall )
-        {
-        TEFLOGSTRING( KTAMESOUT, 
-            "CALL CPECallHandling::TerminateAllConnections: Hanging Up conference call" );
-        iConferenceCall->HangUp();
-        }
+    ReleaseConference(); // Release conference call if exists
             
     // Hangup normal Voice Calls
     for( TInt callId = 0; callId < KPEMaximumNumberOfVoiceCalls; callId++ )
@@ -1916,6 +1908,7 @@
     SendMessage( MEngineMonitor::EPEMessageInitiatedEmergencyCall );
     TEFLOGSTRING( KTAINT, "CALL CPECallHandling::DialEmergencyCall start emergency dialing" );
     CPESingleCall* callData = iCallArrayOwner->GetCallObject( KPEEmergencyCallId );
+    // coverity[dereference]
     callData->DialEmergency( aEmergencyNumber );   
     }
 
@@ -2466,6 +2459,20 @@
         }        
     }
         
-
+// -----------------------------------------------------------------------------
+// CPECallHandling::ReleaseConference
+// Release conference call
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TInt CPECallHandling::ReleaseConference()
+    {
+    TInt errorCode( ECCPErrorNotFound );
+    
+    if ( iConferenceCall )
+        {            
+        errorCode = iConferenceCall->HangUp();
+        }
+    return errorCode;
+    }
 
 //  End of File