Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(99)

Unified Diff: content/browser/frame_host/navigation_request.cc

Issue 2746043003: Fix user agent overridding with PlzNavigate. (Closed)
Patch Set: without PlzNavigate Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/frame_host/navigation_request.cc
diff --git a/content/browser/frame_host/navigation_request.cc b/content/browser/frame_host/navigation_request.cc
index 7a810cf2880b01ac917cd3bf1352fb867c6c5b6c..618804058ca0cbf4606a5226ccdcbb3854096bf0 100644
--- a/content/browser/frame_host/navigation_request.cc
+++ b/content/browser/frame_host/navigation_request.cc
@@ -127,6 +127,7 @@ void AddAdditionalRequestHeaders(net::HttpRequestHeaders* headers,
FrameMsg_Navigate_Type::Value navigation_type,
BrowserContext* browser_context,
const std::string& method,
+ const std::string user_agent_override,
FrameTreeNode* frame_tree_node) {
if (!url.SchemeIsHTTPOrHTTPS())
return;
@@ -142,7 +143,9 @@ void AddAdditionalRequestHeaders(net::HttpRequestHeaders* headers,
headers->SetHeaderIfMissing("Save-Data", "on");
headers->SetHeaderIfMissing(net::HttpRequestHeaders::kUserAgent,
- GetContentClient()->GetUserAgent());
+ user_agent_override.empty()
+ ? GetContentClient()->GetUserAgent()
+ : user_agent_override);
// Check whether DevTools wants to override user agent for this request
// after setting the default user agent.
@@ -326,12 +329,16 @@ NavigationRequest::NavigationRequest(
common_params_.method == "POST");
// Add necessary headers that may not be present in the BeginNavigationParams.
+ const std::string user_agent_override =
+ frame_tree_node_->navigator()
+ ->GetDelegate()
+ ->GetNavigationUserAgentOverride();
net::HttpRequestHeaders headers;
headers.AddHeadersFromString(begin_params_.headers);
AddAdditionalRequestHeaders(
&headers, common_params_.url, common_params_.navigation_type,
frame_tree_node_->navigator()->GetController()->GetBrowserContext(),
- common_params.method, frame_tree_node);
+ common_params.method, user_agent_override, frame_tree_node);
begin_params_.headers = headers.ToString();
}
« no previous file with comments | « no previous file | content/browser/frame_host/navigator_delegate.h » ('j') | content/browser/frame_host/navigator_delegate.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698