diff -r 07656293a99c -r cbb19216b74d datacommsserver/esockserver/ssock/ss_connstates.cpp --- 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(*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(iContext.iMessage); - iContext.iNodeActivity->PostRequestTo(waitingSubConn->Id(), + iContext.iNodeActivity->PostRequestTo(*waitingSubConnPeer, TCFDataClient::TBindTo(binderResp.iNodeId).CRef()); }