Merge "Workaround localhost issues on old runtimes"
diff --git a/jdwp/src/test/java/org/apache/harmony/jpda/tests/framework/jdwp/SocketTransportWrapper.java b/jdwp/src/test/java/org/apache/harmony/jpda/tests/framework/jdwp/SocketTransportWrapper.java
index 74fe05f..2a8eeb0 100644
--- a/jdwp/src/test/java/org/apache/harmony/jpda/tests/framework/jdwp/SocketTransportWrapper.java
+++ b/jdwp/src/test/java/org/apache/harmony/jpda/tests/framework/jdwp/SocketTransportWrapper.java
@@ -95,7 +95,11 @@
iAddress = InetAddress.getLocalHost();
}
- address = iAddress.getHostName() + ":" + serverSocket.getLocalPort();
+ // Older Android runtimes may fail to resolve 'localhost' on a host machine. The workaround
+ // is to use the address instead of the hostname.
+ String hostNameOrAddress =
+ iAddress.isLoopbackAddress() ? iAddress.getHostAddress() : iAddress.getHostName();
+ address = hostNameOrAddress + ":" + serverSocket.getLocalPort();
return address;
}