| Index: net/url_request/url_request_http_job.cc
|
| ===================================================================
|
| --- net/url_request/url_request_http_job.cc (revision 65294)
|
| +++ net/url_request/url_request_http_job.cc (working copy)
|
| @@ -438,6 +438,21 @@
|
| transaction_->StopCaching();
|
| }
|
|
|
| +void URLRequestHttpJob::AddCookies(bool origin_cookies) {
|
| + net::CookieOptions options;
|
| + options.set_include_httponly();
|
| + options.set_read_origin(origin_cookies);
|
| +
|
| + std::string cookies =
|
| + request_->context()->cookie_store()->GetCookiesWithOptions(
|
| + request_->url(), options);
|
| + if (cookies.empty())
|
| + return;
|
| + const std::string& header_name = origin_cookies ?
|
| + net::HttpRequestHeaders::kOriginCookie : net::HttpRequestHeaders::kCookie;
|
| + request_info_.extra_headers.SetHeader(header_name, cookies);
|
| +}
|
| +
|
| void URLRequestHttpJob::OnCanGetCookiesCompleted(int policy) {
|
| // If the request was destroyed, then there is no more work to do.
|
| if (request_ && request_->delegate()) {
|
| @@ -445,15 +460,8 @@
|
| request_->delegate()->OnGetCookies(request_, true);
|
| } else if (policy == net::OK && request_->context()->cookie_store()) {
|
| request_->delegate()->OnGetCookies(request_, false);
|
| - net::CookieOptions options;
|
| - options.set_include_httponly();
|
| - std::string cookies =
|
| - request_->context()->cookie_store()->GetCookiesWithOptions(
|
| - request_->url(), options);
|
| - if (!cookies.empty()) {
|
| - request_info_.extra_headers.SetHeader(
|
| - net::HttpRequestHeaders::kCookie, cookies);
|
| - }
|
| + AddCookies(false);
|
| + AddCookies(true);
|
| }
|
| // We may have been canceled within OnGetCookies.
|
| if (GetStatus().is_success()) {
|
|
|