Index: net/test/embedded_test_server/embedded_test_server.cc |
diff --git a/net/test/embedded_test_server/embedded_test_server.cc b/net/test/embedded_test_server/embedded_test_server.cc |
index 128597f20e8f80cb2a5bd202c4b03d9a7327a188..4bd68fe67c62f16a24c647f80230ed59993f3beb 100644 |
--- a/net/test/embedded_test_server/embedded_test_server.cc |
+++ b/net/test/embedded_test_server/embedded_test_server.cc |
@@ -99,13 +99,15 @@ HttpListenSocket::~HttpListenSocket() { |
DCHECK(thread_checker_.CalledOnValidThread()); |
} |
-EmbeddedTestServer::EmbeddedTestServer( |
- const scoped_refptr<base::SingleThreadTaskRunner>& io_thread) |
- : io_thread_(io_thread), |
+EmbeddedTestServer::EmbeddedTestServer() |
+ : io_thread_("EmbeddedTestServer io thread"), |
port_(-1), |
weak_factory_(this) { |
- DCHECK(io_thread_.get()); |
DCHECK(thread_checker_.CalledOnValidThread()); |
+ |
+ base::Thread::Options thread_options; |
+ thread_options.message_loop_type = base::MessageLoop::TYPE_IO; |
+ CHECK(io_thread_.StartWithOptions(thread_options)); |
} |
EmbeddedTestServer::~EmbeddedTestServer() { |
@@ -135,7 +137,7 @@ bool EmbeddedTestServer::ShutdownAndWaitUntilComplete() { |
} |
void EmbeddedTestServer::InitializeOnIOThread() { |
- DCHECK(io_thread_->BelongsToCurrentThread()); |
+ DCHECK(io_thread_.message_loop_proxy()->BelongsToCurrentThread()); |
DCHECK(!Started()); |
SocketDescriptor socket_descriptor = |
@@ -156,7 +158,7 @@ void EmbeddedTestServer::InitializeOnIOThread() { |
} |
void EmbeddedTestServer::ShutdownOnIOThread() { |
- DCHECK(io_thread_->BelongsToCurrentThread()); |
+ DCHECK(io_thread_.message_loop_proxy()->BelongsToCurrentThread()); |
listen_socket_.reset(); |
STLDeleteContainerPairSecondPointers(connections_.begin(), |
@@ -166,7 +168,7 @@ void EmbeddedTestServer::ShutdownOnIOThread() { |
void EmbeddedTestServer::HandleRequest(HttpConnection* connection, |
scoped_ptr<HttpRequest> request) { |
- DCHECK(io_thread_->BelongsToCurrentThread()); |
+ DCHECK(io_thread_.message_loop_proxy()->BelongsToCurrentThread()); |
bool request_handled = false; |
@@ -215,7 +217,7 @@ void EmbeddedTestServer::RegisterRequestHandler( |
void EmbeddedTestServer::DidAccept( |
StreamListenSocket* server, |
scoped_ptr<StreamListenSocket> connection) { |
- DCHECK(io_thread_->BelongsToCurrentThread()); |
+ DCHECK(io_thread_.message_loop_proxy()->BelongsToCurrentThread()); |
HttpConnection* http_connection = new HttpConnection( |
connection.Pass(), |
@@ -228,7 +230,7 @@ void EmbeddedTestServer::DidAccept( |
void EmbeddedTestServer::DidRead(StreamListenSocket* connection, |
const char* data, |
int length) { |
- DCHECK(io_thread_->BelongsToCurrentThread()); |
+ DCHECK(io_thread_.message_loop_proxy()->BelongsToCurrentThread()); |
HttpConnection* http_connection = FindConnection(connection); |
if (http_connection == NULL) { |
@@ -239,7 +241,7 @@ void EmbeddedTestServer::DidRead(StreamListenSocket* connection, |
} |
void EmbeddedTestServer::DidClose(StreamListenSocket* connection) { |
- DCHECK(io_thread_->BelongsToCurrentThread()); |
+ DCHECK(io_thread_.message_loop_proxy()->BelongsToCurrentThread()); |
HttpConnection* http_connection = FindConnection(connection); |
if (http_connection == NULL) { |
@@ -252,7 +254,7 @@ void EmbeddedTestServer::DidClose(StreamListenSocket* connection) { |
HttpConnection* EmbeddedTestServer::FindConnection( |
StreamListenSocket* socket) { |
- DCHECK(io_thread_->BelongsToCurrentThread()); |
+ DCHECK(io_thread_.message_loop_proxy()->BelongsToCurrentThread()); |
std::map<StreamListenSocket*, HttpConnection*>::iterator it = |
connections_.find(socket); |
@@ -277,8 +279,10 @@ bool EmbeddedTestServer::PostTaskToIOThreadAndWait( |
temporary_loop.reset(new base::MessageLoop()); |
base::RunLoop run_loop; |
- if (!io_thread_->PostTaskAndReply(FROM_HERE, closure, run_loop.QuitClosure())) |
+ if (!io_thread_.message_loop_proxy()->PostTaskAndReply( |
+ FROM_HERE, closure, run_loop.QuitClosure())) { |
return false; |
+ } |
run_loop.Run(); |
return true; |