From 5e0cc0d7ab29e5fbd11316cd3147ef96d65f8de7 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Mon, 10 Sep 2012 11:35:15 -0700 Subject: [PATCH] Fix port logic in WifiDisplayController. It's not the port advertised in the sink's wfd IE, it's the one our source broadcasts in its wfd IE. In addition some dongles ignore the broadcast port and have to be special cased. Change-Id: Id5d279652e336391ba34dfc30bba700043d49b1d --- .../android/server/display/WifiDisplayController.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/services/java/com/android/server/display/WifiDisplayController.java b/services/java/com/android/server/display/WifiDisplayController.java index b617d006f473b..67691dfd9838d 100644 --- a/services/java/com/android/server/display/WifiDisplayController.java +++ b/services/java/com/android/server/display/WifiDisplayController.java @@ -493,8 +493,13 @@ final class WifiDisplayController implements DumpUtils.Dump { return; // done } - WifiP2pWfdInfo wfdInfo = mConnectedDevice.wfdInfo; - int port = (wfdInfo != null ? wfdInfo.getControlPort() : DEFAULT_CONTROL_PORT); + int port = DEFAULT_CONTROL_PORT; + if (mConnectedDevice.deviceName.startsWith("DIRECT-") + && mConnectedDevice.deviceName.endsWith("Broadcom")) { + // These dongles ignore the port we broadcast in our WFD IE. + port = 8554; + } + final WifiDisplay display = createWifiDisplay(mConnectedDevice); final String iface = addr.getHostAddress() + ":" + port;