Index: mojo/spy/websocket_server.cc |
diff --git a/mojo/spy/websocket_server.cc b/mojo/spy/websocket_server.cc |
index 649a135c13e81fb363db3b878ad8833343ce515c..315311c8e75f4a4785cbe27890572d728c4f1d9b 100644 |
--- a/mojo/spy/websocket_server.cc |
+++ b/mojo/spy/websocket_server.cc |
@@ -10,7 +10,7 @@ |
#include "net/base/net_errors.h" |
#include "net/server/http_server_request_info.h" |
#include "net/server/http_server_response_info.h" |
-#include "net/socket/tcp_listen_socket.h" |
+#include "net/socket/tcp_server_socket.h" |
namespace spy { |
@@ -24,8 +24,9 @@ WebSocketServer::~WebSocketServer() { |
} |
bool WebSocketServer::Start() { |
- net::TCPListenSocketFactory factory("0.0.0.0", port_); |
- server_ = new net::HttpServer(factory, this); |
+ net::TCPServerSocketFactory factory; |
+ factory.SetAddressAndPort("0.0.0.0", 0); |
+ server_.reset(new net::HttpServer(factory.CreateAndListen(), this)); |
net::IPEndPoint address; |
int error = server_->GetLocalAddress(&address); |
port_ = address.port(); |
@@ -42,10 +43,7 @@ void WebSocketServer::OnWebSocketRequest( |
int connection_id, |
const net::HttpServerRequestInfo& info) { |
if (connection_id_ != kNotConnected) { |
- // Reject connection since we already have our client. |
- base::MessageLoop::current()->PostTask( |
- FROM_HERE, |
- base::Bind(&net::HttpServer::Close, server_, connection_id)); |
+ server_->Close(connection_id); |
return; |
} |
// Accept the connection. |