--- a/linklayercontrol/networkinterfacemgr/agentprcore/src/agentscpr.cpp Thu Jul 15 20:25:02 2010 +0300
+++ b/linklayercontrol/networkinterfacemgr/agentprcore/src/agentscpr.cpp Thu Aug 19 11:25:30 2010 +0300
@@ -296,10 +296,15 @@
}
else
{
- // Agent has stopped and disconnected without this node telling it to
- // Could be an error in the agent initiating a disconnect
- __CFLOG_VAR((KAgentSCprTag, KAgentSCprSubTag, _L8("CAgentSubConnectionProvider::ConnectionDownL() - Agent has stopped unexpectedly")));
- ControlProvider()->PostMessage(Id(), TCFControlProvider::TDataClientGoneDown(KErrDisconnected).CRef());
+ // Verify AgentSCPR is Started, if its started, do not initiate TDataClientGoneDown, else initiate it
+ if(!AgentProvisionInfo()->AgentAdapter()->IsAgentInErrorState())
+ {
+ // Agent has stopped and disconnected without this node telling it to
+ // Could be an error in the agent initiating a disconnect
+ __CFLOG_VAR((KAgentSCprTag, KAgentSCprSubTag, _L8("CAgentSubConnectionProvider::ConnectionDownL() - Agent has stopped unexpectedly")));
+ ControlProvider()->PostMessage(Id(), TCFControlProvider::TDataClientGoneDown(KErrDisconnected).CRef());
+ }
+
}
}