datacommsserver/esockserver/core_states/ss_coreprstates.cpp
changeset 5 68ef71f0cd72
parent 4 928ed51ddc43
child 9 77effd21b2c9
--- a/datacommsserver/esockserver/core_states/ss_coreprstates.cpp	Tue Jan 26 13:09:14 2010 +0200
+++ b/datacommsserver/esockserver/core_states/ss_coreprstates.cpp	Tue Feb 02 00:53:00 2010 +0200
@@ -2092,10 +2092,11 @@
 EXPORT_DEFINE_SMELEMENT(TCancelDataClientStart, NetStateMachine::MStateTransition, PRStates::TContext)
 EXPORT_C void TCancelDataClientStart::DoL()
 	{
-	// Cancel must come from the same activity that sent TStart
-	// This transition will handle Data Clients started by ECFActivityStart
-	// it will not handle those started by ECFActivityStartDataClient
-	RClientInterface::OpenPostMessageClose(TNodeCtxId(ECFActivityStart, iContext.NodeId()), iContext.NodeId(), TEBase::TCancel().CRef());
+	CNodeActivityBase* dcstart = iContext.Node().FindActivityById(ECFActivityStartDataClient);
+	if (dcstart)
+		{
+		dcstart->Cancel(iContext);
+		}
 	}
 
 EXPORT_DEFINE_SMELEMENT(TProcessDataClientStop, NetStateMachine::MStateTransition, PRStates::TContext)