Fix race initialising DevtoolsNetworkController

This commit is contained in:
deepak1556 2016-04-14 06:59:14 +05:30
parent 2f107fcbe1
commit de60acbfde
10 changed files with 130 additions and 35 deletions

View file

@ -78,13 +78,6 @@ CreateFailureResponse(int id, const std::string& param) {
return response;
}
void UpdateNetworkStateInIO(brightray::DevToolsNetworkController* controller,
const std::string& client_id,
scoped_ptr<brightray::DevToolsNetworkConditions> conditions) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
controller->SetNetworkState(client_id, std::move(conditions));
}
} // namespace
DevToolsNetworkProtocolHandler::DevToolsNetworkProtocolHandler() {
@ -172,11 +165,8 @@ void DevToolsNetworkProtocolHandler::UpdateNetworkState(
scoped_ptr<DevToolsNetworkConditions> conditions) {
auto browser_context =
static_cast<brightray::BrowserContext*>(agent_host->GetBrowserContext());
BrowserThread::PostTask(BrowserThread::IO, FROM_HERE,
base::Bind(&UpdateNetworkStateInIO,
browser_context->GetDevToolsNetworkController(),
agent_host->GetId(),
base::Passed(&conditions)));
browser_context->network_controller_handle()->SetNetworkState(
agent_host->GetId(), std::move(conditions));
}
} // namespace brightray