| Index: runtime/bin/socket_win.cc
 | 
| diff --git a/runtime/bin/socket_win.cc b/runtime/bin/socket_win.cc
 | 
| index adc6aef87ae7026ad3dabfa9f11e29ee513644c3..fdefef2abbd9d1444f800b6d44510fb0cd3aacae 100644
 | 
| --- a/runtime/bin/socket_win.cc
 | 
| +++ b/runtime/bin/socket_win.cc
 | 
| @@ -66,12 +66,14 @@ bool Socket::GetRemotePeer(intptr_t fd, char *host, intptr_t *port) {
 | 
|    // Clear the port before calling WSAAddressToString as WSAAddressToString
 | 
|    // includes the port in the formatted string.
 | 
|    socket_address.sin_port = 0;
 | 
| +  wchar_t* unicode_host = StringUtils::Utf8ToWide(host);
 | 
|    DWORD len = INET_ADDRSTRLEN;
 | 
| -  int err = WSAAddressToString(reinterpret_cast<LPSOCKADDR>(&socket_address),
 | 
| -                               sizeof(socket_address),
 | 
| -                               NULL,
 | 
| -                               host,
 | 
| -                               &len);
 | 
| +  int err = WSAAddressToStringW(reinterpret_cast<LPSOCKADDR>(&socket_address),
 | 
| +                                sizeof(socket_address),
 | 
| +                                NULL,
 | 
| +                                unicode_host,
 | 
| +                                &len);
 | 
| +  free(unicode_host);
 | 
|    if (err != 0) {
 | 
|      Log::PrintErr("Error WSAAddressToString: %d\n", WSAGetLastError());
 | 
|      return false;
 | 
| @@ -195,12 +197,14 @@ const char* Socket::LookupIPv4Address(char* host, OSError** os_error) {
 | 
|  
 | 
|    // Clear the port before calling WSAAddressToString as WSAAddressToString
 | 
|    // includes the port in the formatted string.
 | 
| +  wchar_t* unicode_buffer = StringUtils::Utf8ToWide(buffer);
 | 
|    DWORD len = INET_ADDRSTRLEN;
 | 
| -  int err = WSAAddressToString(reinterpret_cast<LPSOCKADDR>(sockaddr),
 | 
| -                               sizeof(sockaddr_in),
 | 
| -                               NULL,
 | 
| -                               buffer,
 | 
| -                               &len);
 | 
| +  int err = WSAAddressToStringW(reinterpret_cast<LPSOCKADDR>(sockaddr),
 | 
| +                                sizeof(sockaddr_in),
 | 
| +                                NULL,
 | 
| +                                unicode_buffer,
 | 
| +                                &len);
 | 
| +  free(unicode_buffer);
 | 
|    if (err != 0) {
 | 
|      free(buffer);
 | 
|      return NULL;
 | 
| 
 |