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;
     }