--- 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;
}
}