| Index: chrome/browser/cookies_tree_model.cc
|
| diff --git a/chrome/browser/cookies_tree_model.cc b/chrome/browser/cookies_tree_model.cc
|
| index b2660ec852bd9e74151437ebe6205018cdccdf6b..350c6eaf3e292ec7e16d7015af64d425e45c3d7e 100644
|
| --- a/chrome/browser/cookies_tree_model.cc
|
| +++ b/chrome/browser/cookies_tree_model.cc
|
| @@ -14,6 +14,8 @@
|
| #include "base/string_util.h"
|
| #include "base/utf_string_conversions.h"
|
| #include "chrome/browser/browsing_data_cookie_helper.h"
|
| +#include "chrome/browser/content_settings/content_settings_pattern.h"
|
| +#include "chrome/browser/content_settings/cookie_settings.h"
|
| #include "chrome/browser/content_settings/host_content_settings_map.h"
|
| #include "chrome/browser/extensions/extension_service.h"
|
| #include "content/browser/in_process_webkit/webkit_context.h"
|
| @@ -454,11 +456,20 @@ CookieTreeQuotaNode* CookieTreeOriginNode::UpdateOrCreateQuotaNode(
|
| void CookieTreeOriginNode::CreateContentException(
|
| HostContentSettingsMap* content_settings, ContentSetting setting) const {
|
| if (CanCreateContentException()) {
|
| - content_settings->AddExceptionForURL(url_,
|
| - url_,
|
| - CONTENT_SETTINGS_TYPE_COOKIES,
|
| - "",
|
| - setting);
|
| + CookieSettings* cookie_settings = content_settings->GetCookieSettings();
|
| + cookie_settings->ResetCookieAllowed(
|
| + ContentSettingsPattern::FromURLNoWildcard(url_),
|
| + ContentSettingsPattern::Wildcard());
|
| + cookie_settings->ResetCookieSessionOnly(
|
| + ContentSettingsPattern::FromURLNoWildcard(url_));
|
| + bool allow = (setting == CONTENT_SETTING_ALLOW ||
|
| + setting == CONTENT_SETTING_SESSION_ONLY);
|
| + bool session_only = (setting == CONTENT_SETTING_SESSION_ONLY);
|
| + cookie_settings->SetCookieAllowed(ContentSettingsPattern::FromURL(url_),
|
| + ContentSettingsPattern::Wildcard(),
|
| + allow);
|
| + cookie_settings->SetCookieSessionOnly(ContentSettingsPattern::FromURL(url_),
|
| + session_only);
|
| }
|
| }
|
|
|
|
|