Index: components/renderer_context_menu/render_view_context_menu_base.cc |
diff --git a/components/renderer_context_menu/render_view_context_menu_base.cc b/components/renderer_context_menu/render_view_context_menu_base.cc |
index d6472dfb3116061ea31f061015192332c58b6e7b..80f26bc644ed9f3966dd7aba33b8c2aac2fc91ee 100644 |
--- a/components/renderer_context_menu/render_view_context_menu_base.cc |
+++ b/components/renderer_context_menu/render_view_context_menu_base.cc |
@@ -378,6 +378,15 @@ void RenderViewContextMenuBase::OpenURL( |
const GURL& url, const GURL& referring_url, |
WindowOpenDisposition disposition, |
ui::PageTransition transition) { |
+ OpenURLWithExtraHeaders(url, referring_url, disposition, transition, ""); |
+} |
+ |
+void RenderViewContextMenuBase::OpenURLWithExtraHeaders( |
+ const GURL& url, |
+ const GURL& referring_url, |
+ WindowOpenDisposition disposition, |
+ ui::PageTransition transition, |
+ const std::string& extra_headers) { |
content::Referrer referrer = content::Referrer::SanitizeForRequest( |
url, |
content::Referrer(referring_url.GetAsReferrer(), |
@@ -386,8 +395,11 @@ void RenderViewContextMenuBase::OpenURL( |
if (params_.link_url == url && disposition != OFF_THE_RECORD) |
params_.custom_context.link_followed = url; |
- WebContents* new_contents = source_web_contents_->OpenURL(OpenURLParams( |
- url, referrer, disposition, transition, false)); |
+ OpenURLParams open_url_params(url, referrer, disposition, transition, false); |
+ if (!extra_headers.empty()) |
+ open_url_params.extra_headers = extra_headers; |
+ |
+ WebContents* new_contents = source_web_contents_->OpenURL(open_url_params); |
if (!new_contents) |
return; |