Index: chrome/browser/renderer_context_menu/render_view_context_menu.cc |
diff --git a/chrome/browser/renderer_context_menu/render_view_context_menu.cc b/chrome/browser/renderer_context_menu/render_view_context_menu.cc |
index 82574685ec109e0b2b8ff1d366b488a7b66f73ee..63c9fe5292b41c3f4aba4cfded4541a011ba662e 100644 |
--- a/chrome/browser/renderer_context_menu/render_view_context_menu.cc |
+++ b/chrome/browser/renderer_context_menu/render_view_context_menu.cc |
@@ -1995,24 +1995,14 @@ base::string16 RenderViewContextMenu::PrintableSelectionText() { |
// Controller functions -------------------------------------------------------- |
void RenderViewContextMenu::OpenURL( |
- const GURL& url, const GURL& referrer, int64 frame_id, |
+ const GURL& url, const GURL& referring_url, int64 frame_id, |
WindowOpenDisposition disposition, |
content::PageTransition transition) { |
- // Ensure that URL fragment, username and password fields are not sent |
- // in the referrer. |
- GURL sanitized_referrer(referrer); |
- if (sanitized_referrer.is_valid() && (sanitized_referrer.has_ref() || |
- sanitized_referrer.has_username() || sanitized_referrer.has_password())) { |
- GURL::Replacements referrer_mods; |
- referrer_mods.ClearRef(); |
- referrer_mods.ClearUsername(); |
- referrer_mods.ClearPassword(); |
- sanitized_referrer = sanitized_referrer.ReplaceComponents(referrer_mods); |
- } |
+ content::Referrer referrer(referring_url.GetAsReferrer(), |
+ params_.referrer_policy); |
WebContents* new_contents = source_web_contents_->OpenURL(OpenURLParams( |
- url, content::Referrer(sanitized_referrer, params_.referrer_policy), |
- disposition, transition, false)); |
+ url, referrer, disposition, transition, false)); |
if (!new_contents) |
return; |