| Index: net/test/test_server_win.cc
|
| diff --git a/net/test/test_server_win.cc b/net/test/test_server_win.cc
|
| index 79eb8dd3c6ebb2bee72b4e3221863d2a50423b60..e1c54e989da1157f924824bc0f229636ac16b16c 100644
|
| --- a/net/test/test_server_win.cc
|
| +++ b/net/test/test_server_win.cc
|
| @@ -194,15 +194,25 @@ bool TestServer::WaitToStart() {
|
| ScopedHandle read_fd(child_read_fd_.Take());
|
| ScopedHandle write_fd(child_write_fd_.Take());
|
|
|
| - // Try to read two bytes from the pipe indicating the ephemeral port number.
|
| - uint16 port = 0;
|
| - if (!ReadData(read_fd.Get(), write_fd.Get(), sizeof(port),
|
| - reinterpret_cast<uint8*>(&port))) {
|
| - LOG(ERROR) << "Could not read port";
|
| + uint32 server_data_len = 0;
|
| + if (!ReadData(read_fd.Get(), write_fd.Get(), sizeof(server_data_len),
|
| + reinterpret_cast<uint8*>(&server_data_len))) {
|
| + LOG(ERROR) << "Could not read server_data_len";
|
| + return false;
|
| + }
|
| + std::string server_data(server_data_len, '\0');
|
| + if (!ReadData(read_fd.Get(), write_fd.Get(), server_data_len,
|
| + reinterpret_cast<uint8*>(&server_data[0]))) {
|
| + LOG(ERROR) << "Could not read server_data (" << server_data_len
|
| + << " bytes)";
|
| + return false;
|
| + }
|
| +
|
| + if (!ParseServerData(server_data)) {
|
| + LOG(ERROR) << "Could not parse server_data: " << server_data;
|
| return false;
|
| }
|
|
|
| - host_port_pair_.set_port(port);
|
| return true;
|
| }
|
|
|
|
|