realtimenetprots/sipfw/ProfileAgent/IETF_Agent/src/Sipietfprofilecontext.cpp
changeset 39 7cdef8deefa0
parent 34 3c8db403127f
child 45 15965fe54016
--- a/realtimenetprots/sipfw/ProfileAgent/IETF_Agent/src/Sipietfprofilecontext.cpp	Tue Jul 06 14:39:54 2010 +0300
+++ b/realtimenetprots/sipfw/ProfileAgent/IETF_Agent/src/Sipietfprofilecontext.cpp	Wed Aug 18 10:07:48 2010 +0300
@@ -442,12 +442,12 @@
 	     CurrentState() == MSIPProfileContext::ERegistered) &&
 		(aError == K408TimeOut ||
 		 aError == K500ServerInternalError ||
-		 aError == KErrSIPOutboundProxyNotResponding || 
+		 aError == KErrTimedOut || 
+		 (( aError == KErrSIPOutboundProxyNotResponding || 
 		 aError == KErrSIPResolvingFailure || 
-		 aError == KErrTimedOut || 
 		 aError == KErrSIPTransportFailure ||
-		 aError == KErrSIPICMPFailure  && 
-		 iConnection.State() != CSIPConnection::ESuspended))		
+		 aError == KErrSIPICMPFailure ) && 
+		 iConnection.State() != CSIPConnection::ESuspended)))		
 	    {
 		if ( iRetryCounterSum + 1 < KMaxRetryForOneAddress &&
 		     iRetryCounter < KMaxRetryForOneAddress )
@@ -562,10 +562,12 @@
         PROFILE_DEBUG3("SIPIetfProfileContext::IncomingResponse", ProfileId())
         aHandled = ETrue;
         const CSIPResponseElements* response = aTransaction.ResponseElements();
-        TUint responseCode = response->StatusCode();
+        TInt responseCode  = KErrGeneral;
         TBool retry = EFalse;
         if (response)
             {
+                responseCode = response->StatusCode();
+                
                 retry = RetryRegister( &aTransaction,  responseCode);
                 if( !retry )
                 {