bluetoothengine/btsac/src/btsacGavdp.cpp
branchRCL_3
changeset 72 4b59561a31c0
parent 0 f63038272f30
--- a/bluetoothengine/btsac/src/btsacGavdp.cpp	Wed Sep 15 12:23:51 2010 +0300
+++ b/bluetoothengine/btsac/src/btsacGavdp.cpp	Wed Oct 13 14:43:49 2010 +0300
@@ -663,15 +663,25 @@
 	TRACE_INFO((_L("CBTSACGavdp::GAVDP_BearerReady() Got a bearer, for session %d"), aAddr.Session()))
 
 	// AV sockets don't foward opts yet so use addr version
+	TBTDevAddr RemoteBDAddr = aAddr.BTAddr();
 	RBTPhysicalLinkAdapter phy;
-	TBTDevAddr RemoteBDAddr = aAddr.BTAddr(); 
 	TInt err = phy.Open(iSockServ, RemoteBDAddr);
-	TUint16 packets = EAnyACLPacket;
-	err = phy.RequestChangeSupportedPacketTypes(packets);
-	TRACE_INFO((_L("CBTSACGavdp::GAVDP_BearerReady() Modified PHY, result %d"), err))
-
-	// state handles the call-back
-	iObserver->GAVDP_BearerReady(aNewSocket, aAddr);
+	TRACE_INFO((_L("CBTSACGavdp::GAVDP_BearerReady() RBTPhysicalLinkAdapter::Open returned %d"), err))
+	if ( !err )
+		{
+		TUint16 packets = EAnyACLPacket;
+		err = phy.RequestChangeSupportedPacketTypes(packets);
+		TRACE_INFO((_L("CBTSACGavdp::GAVDP_BearerReady() Modified PHY, result %d"), err))
+		phy.Close();
+		}
+	if ( err )
+		{
+		iObserver->GAVDP_Error(err, KNullDesC8());
+		}
+	else
+		{
+		iObserver->GAVDP_BearerReady(aNewSocket, aAddr);
+		}
 	}
 ///////////////////// Call Backs from GAVDP End.///////////////////