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

Unified Diff: content/renderer/render_view_impl.cc

Issue 10387090: Pass the referrer policy with the referrer for the save package code path (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 7 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/renderer/render_view_impl.cc
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index 821fe0b78137a2915d462179ad40c697d8781717..0dba41334c096974210d97c242dc3121aba974f4 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -4426,14 +4426,15 @@ void RenderViewImpl::OnGetAllSavableResourceLinksForCurrentPage(
const GURL& page_url) {
// Prepare list to storage all savable resource links.
std::vector<GURL> resources_list;
- std::vector<GURL> referrers_list;
+ std::vector<GURL> referrer_urls_list;
+ std::vector<WebKit::WebReferrerPolicy> referrer_policies_list;
std::vector<GURL> frames_list;
webkit_glue::SavableResourcesResult result(&resources_list,
- &referrers_list,
+ &referrer_urls_list,
+ &referrer_policies_list,
&frames_list);
- // FIXME(rdsmith): When GetAllSavableResourceLinksForCurrentPage starts to
- // return referrers, it should also return the referrer policies.
+ // webkit/ doesn't know about content::Referrer.
if (!webkit_glue::GetAllSavableResourceLinksForCurrentPage(
webview(),
page_url,
@@ -4441,11 +4442,18 @@ void RenderViewImpl::OnGetAllSavableResourceLinksForCurrentPage(
content::GetSavableSchemes())) {
// If something is wrong when collecting all savable resource links,
// send empty list to embedder(browser) to tell it failed.
- referrers_list.clear();
+ referrer_urls_list.clear();
+ referrer_policies_list.clear();
resources_list.clear();
frames_list.clear();
}
+ std::vector<content::Referrer> referrers_list;
+ for (unsigned i = 0; i < referrer_urls_list.size(); ++i) {
+ referrers_list.push_back(
+ content::Referrer(referrer_urls_list[i], referrer_policies_list[i]));
+ }
+
// Send result of all savable resource links to embedder.
Send(new ViewHostMsg_SendCurrentPageAllSavableResourceLinks(routing_id(),
resources_list,

Powered by Google App Engine
This is Rietveld 408576698