--- a/datacommsserver/esockserver/ssock/ss_connstates.cpp Mon Jun 21 17:02:22 2010 +0300
+++ b/datacommsserver/esockserver/ssock/ss_connstates.cpp Thu Jul 15 20:01:43 2010 +0300
@@ -470,9 +470,11 @@
__ASSERT_DEBUG(iContext.iNodeActivity, ConnPanic(KPanicNoActivity));
CSubConnection* waitingSubConn = iContext.Node().Session()->CSubConnectionFromHandle(static_cast<CESockClientActivityBase&>(*iContext.iNodeActivity).Int0());
User::LeaveIfError(waitingSubConn != NULL ? KErrNone : KErrCancel);
-
+ RNodeInterface* waitingSubConnPeer = iContext.Node().FindClient(waitingSubConn->Id()); //To my surprise SC is a peer of this (so must use peer handle when talking to it)
+ __ASSERT_DEBUG(waitingSubConnPeer, ConnPanic(KPanicNoDataClient));
+
TCFServiceProvider::TCommsBinderResponse& binderResp = message_cast<TCFServiceProvider::TCommsBinderResponse>(iContext.iMessage);
- iContext.iNodeActivity->PostRequestTo(waitingSubConn->Id(),
+ iContext.iNodeActivity->PostRequestTo(*waitingSubConnPeer,
TCFDataClient::TBindTo(binderResp.iNodeId).CRef());
}