linklayercontrol/networkinterfacemgr/agentprcore/src/CAgentAdapter.cpp
changeset 68 1697cc2ba93d
parent 18 39bb7c3571e9
--- a/linklayercontrol/networkinterfacemgr/agentprcore/src/CAgentAdapter.cpp	Thu Sep 16 13:48:44 2010 +0530
+++ b/linklayercontrol/networkinterfacemgr/agentprcore/src/CAgentAdapter.cpp	Thu Sep 23 17:23:35 2010 +0530
@@ -71,7 +71,7 @@
     : iAgentScpr(aAgentScpr),
     iAgentState(EDisconnected),
     iAgentConnectType(EAgentNone),
-    iLastProgress(KFinishedSelection,KErrNone)
+    iLastProgress(KFinishedSelection,KErrNone),iAgentErrorState(EFalse)
     {
     }
 
@@ -155,8 +155,11 @@
         {
         iAgent->CancelReconnect();
         }
-    iAgentState = EDisconnecting;
-    iAgent->Disconnect(aReason);
+    if (iAgentState != EDisconnecting)
+        {        
+        iAgentState = EDisconnecting;
+    	iAgent->Disconnect(aReason);
+        }
     }
 
 
@@ -307,6 +310,8 @@
         else
             {
             iLastProgress.iError = aStatus;
+            // set the agent state to EDisconnecting
+            iAgentState = EDisconnecting;
             iAgent->Disconnect(aStatus);
             }
         }
@@ -391,6 +396,7 @@
     else
         {
         iAgentScpr.Error(iLastProgress);
+        iAgentErrorState = ETrue;
         }
     }