| Index: net/base/static_cookie_policy.cc
|
| diff --git a/net/base/static_cookie_policy.cc b/net/base/static_cookie_policy.cc
|
| index 0ff6ead91e284ae7be284902badca1a44cbc2121..19e0a16028255aff66c90c980dd4bdb5554b52ad 100644
|
| --- a/net/base/static_cookie_policy.cc
|
| +++ b/net/base/static_cookie_policy.cc
|
| @@ -16,9 +16,13 @@ int StaticCookiePolicy::CanGetCookies(const GURL& url,
|
| CompletionCallback* callback) {
|
| switch (type_) {
|
| case StaticCookiePolicy::ALLOW_ALL_COOKIES:
|
| + case StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES:
|
| return OK;
|
| - case StaticCookiePolicy::BLOCK_THIRD_PARTY_COOKIES:
|
| - return OK;
|
| + case StaticCookiePolicy::BLOCK_ALL_THIRD_PARTY_COOKIES:
|
| + if (first_party_for_cookies.is_empty())
|
| + return OK; // Empty first-party URL indicates a first-party request.
|
| + return RegistryControlledDomainService::SameDomainOrHost(
|
| + url, first_party_for_cookies) ? OK : ERR_ACCESS_DENIED;
|
| case StaticCookiePolicy::BLOCK_ALL_COOKIES:
|
| return ERR_ACCESS_DENIED;
|
| default:
|
| @@ -34,7 +38,8 @@ int StaticCookiePolicy::CanSetCookie(const GURL& url,
|
| switch (type_) {
|
| case StaticCookiePolicy::ALLOW_ALL_COOKIES:
|
| return OK;
|
| - case StaticCookiePolicy::BLOCK_THIRD_PARTY_COOKIES:
|
| + case StaticCookiePolicy::BLOCK_SETTING_THIRD_PARTY_COOKIES:
|
| + case StaticCookiePolicy::BLOCK_ALL_THIRD_PARTY_COOKIES:
|
| if (first_party_for_cookies.is_empty())
|
| return OK; // Empty first-party URL indicates a first-party request.
|
| return RegistryControlledDomainService::SameDomainOrHost(
|
|
|