sipvoipprovider/svphold/src/svpholdcontroller.cpp
branchRCL_3
changeset 20 65a3ef1d5bd0
parent 0 a4daefaec16c
--- a/sipvoipprovider/svphold/src/svpholdcontroller.cpp	Mon Jun 21 15:29:21 2010 +0300
+++ b/sipvoipprovider/svphold/src/svpholdcontroller.cpp	Thu Aug 19 09:45:22 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006-2008 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -372,6 +372,17 @@
             iContext->CrossOver( EFalse );
             }
         }
+    
+    if ( 0 == aStatusCode && ESVPEstablishing == HoldState() )
+        {
+        SVPDEBUG1( "CSVPHoldController::RequestFailed - status 0 received" )
+        
+        iReinviteCrossover = EFalse;
+        iContext->CrossOver( EFalse );
+        
+        SVPDEBUG1( "CSVPHoldController::RequestFailed - set status code 400" )
+        aStatusCode = KSVPBadRequestVal;
+        }
 
     TInt err = KErrNone;
     if ( iReinviteCrossover )