| Index: content/browser/devtools/render_frame_devtools_agent_host.cc
|
| diff --git a/content/browser/devtools/render_frame_devtools_agent_host.cc b/content/browser/devtools/render_frame_devtools_agent_host.cc
|
| index 6ecf9819126045718902f4bdea3a8b918ece6df6..4433e25d2e57f9ed3b971e3f899c77ee2983aaf8 100644
|
| --- a/content/browser/devtools/render_frame_devtools_agent_host.cc
|
| +++ b/content/browser/devtools/render_frame_devtools_agent_host.cc
|
| @@ -425,13 +425,25 @@ bool RenderFrameDevToolsAgentHost::IsNetworkHandlerEnabled(
|
| }
|
|
|
| // static
|
| -std::string RenderFrameDevToolsAgentHost::UserAgentOverride(
|
| - FrameTreeNode* frame_tree_node) {
|
| +void RenderFrameDevToolsAgentHost::ModifyRequestHeadersIfNeeded(
|
| + FrameTreeNode* frame_tree_node,
|
| + net::HttpRequestHeaders* headers) {
|
| RenderFrameDevToolsAgentHost* agent_host = GetAgentHostFor(frame_tree_node);
|
| if (!agent_host || !agent_host->session())
|
| - return std::string();
|
| - return protocol::NetworkHandler::FromSession(agent_host->session())
|
| - ->UserAgentOverride();
|
| + return;
|
| + protocol::NetworkHandler* network_handler =
|
| + protocol::NetworkHandler::FromSession(agent_host->session());
|
| + std::string user_agent_override = network_handler->UserAgentOverride();
|
| + if (!user_agent_override.empty()) {
|
| + headers->SetHeader(net::HttpRequestHeaders::kUserAgent,
|
| + user_agent_override);
|
| + }
|
| + if (network_handler->interception_enabled()) {
|
| + // Needed by DevToolsURLRequestInterceptor and will be removed by
|
| + // DevToolsNetworkTransaction::Start before the request is actually sent.
|
| + headers->SetHeader("X-DevTools-Emulate-Network-Conditions-Client-Id",
|
| + agent_host->GetId());
|
| + }
|
| }
|
|
|
| // static
|
|
|