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

Side by Side Diff: chrome/browser/predictors/resource_prefetcher.cc

Issue 1411813003: Teach URLRequest about initiator checks for First-Party-Only cookies. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Feedback. Created 4 years, 11 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/predictors/resource_prefetcher.h" 5 #include "chrome/browser/predictors/resource_prefetcher.h"
6 6
7 #include <iterator> 7 #include <iterator>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
11 #include "content/public/browser/browser_thread.h" 11 #include "content/public/browser/browser_thread.h"
12 #include "net/base/io_buffer.h" 12 #include "net/base/io_buffer.h"
13 #include "net/base/load_flags.h" 13 #include "net/base/load_flags.h"
14 #include "net/base/request_priority.h" 14 #include "net/base/request_priority.h"
15 #include "net/url_request/url_request_context.h" 15 #include "net/url_request/url_request_context.h"
16 #include "url/origin.h"
16 17
17 namespace { 18 namespace {
18 19
19 // The size of the buffer used to read the resource. 20 // The size of the buffer used to read the resource.
20 static const size_t kResourceBufferSizeBytes = 50000; 21 static const size_t kResourceBufferSizeBytes = 50000;
21 22
22 } // namespace 23 } // namespace
23 24
24 namespace predictors { 25 namespace predictors {
25 26
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 128
128 net::URLRequest* url_request = 129 net::URLRequest* url_request =
129 delegate_->GetURLRequestContext()->CreateRequest( 130 delegate_->GetURLRequestContext()->CreateRequest(
130 request->resource_url, net::LOW, this).release(); 131 request->resource_url, net::LOW, this).release();
131 132
132 inflight_requests_[url_request] = request; 133 inflight_requests_[url_request] = request;
133 host_inflight_counts_[url_request->original_url().host()] += 1; 134 host_inflight_counts_[url_request->original_url().host()] += 1;
134 135
135 url_request->set_method("GET"); 136 url_request->set_method("GET");
136 url_request->set_first_party_for_cookies(navigation_id_.main_frame_url); 137 url_request->set_first_party_for_cookies(navigation_id_.main_frame_url);
138 url_request->set_initiator(url::Origin(navigation_id_.main_frame_url));
137 url_request->SetReferrer(navigation_id_.main_frame_url.spec()); 139 url_request->SetReferrer(navigation_id_.main_frame_url.spec());
138 url_request->SetLoadFlags(url_request->load_flags() | net::LOAD_PREFETCH); 140 url_request->SetLoadFlags(url_request->load_flags() | net::LOAD_PREFETCH);
139 StartURLRequest(url_request); 141 StartURLRequest(url_request);
140 } 142 }
141 143
142 void ResourcePrefetcher::StartURLRequest(net::URLRequest* request) { 144 void ResourcePrefetcher::StartURLRequest(net::URLRequest* request) {
143 request->Start(); 145 request->Start();
144 } 146 }
145 147
146 void ResourcePrefetcher::FinishRequest(net::URLRequest* request, 148 void ResourcePrefetcher::FinishRequest(net::URLRequest* request,
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
234 if (request->status().error()) { 236 if (request->status().error()) {
235 FinishRequest(request, Request::PREFETCH_STATUS_FAILED); 237 FinishRequest(request, Request::PREFETCH_STATUS_FAILED);
236 return; 238 return;
237 } 239 }
238 240
239 if (ShouldContinueReadingRequest(request, bytes_read)) 241 if (ShouldContinueReadingRequest(request, bytes_read))
240 ReadFullResponse(request); 242 ReadFullResponse(request);
241 } 243 }
242 244
243 } // namespace predictors 245 } // namespace predictors
OLDNEW
« no previous file with comments | « no previous file | content/browser/appcache/appcache_update_job.cc » ('j') | net/url_request/url_fetcher_core.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698