Index: chrome/browser/bitmap_fetcher.cc |
diff --git a/chrome/browser/bitmap_fetcher.cc b/chrome/browser/bitmap_fetcher.cc |
index c31b62aca2268e4b4f6b1cb212937588a2c6b5cb..f80f90cbdd0fd80fe4e07e847b51b1ed779d5b97 100644 |
--- a/chrome/browser/bitmap_fetcher.cc |
+++ b/chrome/browser/bitmap_fetcher.cc |
@@ -20,12 +20,14 @@ BitmapFetcher::BitmapFetcher(const GURL& url, |
BitmapFetcher::~BitmapFetcher() {} |
void BitmapFetcher::Start(net::URLRequestContextGetter* request_context) { |
- if (url_fetcher_ != NULL) |
- return; |
+ Fetch(request_context, NULL, NULL, NULL); |
+} |
- url_fetcher_.reset(net::URLFetcher::Create(url_, net::URLFetcher::GET, this)); |
- url_fetcher_->SetRequestContext(request_context); |
- url_fetcher_->Start(); |
+void BitmapFetcher::Start(net::URLRequestContextGetter* request_context, |
+ const std::string& referrer, |
+ net::URLRequest::ReferrerPolicy referrer_policy, |
+ int load_flags) { |
+ Fetch(request_context, &referrer, &referrer_policy, &load_flags); |
} |
// Methods inherited from URLFetcherDelegate. |
@@ -73,6 +75,26 @@ void BitmapFetcher::OnDecodeImageFailed(const ImageDecoder* decoder) { |
ReportFailure(); |
} |
+void BitmapFetcher::Fetch( |
+ net::URLRequestContextGetter* request_context, |
+ const std::string* referrer, |
+ const net::URLRequest::ReferrerPolicy* referrer_policy, |
+ const int* load_flags) { |
+ if (url_fetcher_ != NULL) |
+ return; |
+ |
+ url_fetcher_.reset(net::URLFetcher::Create(url_, net::URLFetcher::GET, this)); |
+ url_fetcher_->SetRequestContext(request_context); |
+ if (referrer) |
+ url_fetcher_->SetReferrer(*referrer); |
+ if (referrer_policy) |
+ url_fetcher_->SetReferrerPolicy(*referrer_policy); |
+ if (load_flags) |
+ url_fetcher_->SetLoadFlags(*load_flags); |
+ |
+ url_fetcher_->Start(); |
+} |
+ |
void BitmapFetcher::ReportFailure() { |
delegate_->OnFetchComplete(url_, NULL); |
} |