| Index: chrome/android/java/src/org/chromium/chrome/browser/preferences/website/Website.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/Website.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/Website.java
|
| index df376b27c439f6e3489deacfba999d65115f36da..d0a7c4064fe9f0006d59525b7a4b14ff2b2ee7c1 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/Website.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/Website.java
|
| @@ -4,6 +4,7 @@
|
|
|
| package org.chromium.chrome.browser.preferences.website;
|
|
|
| +import org.chromium.chrome.browser.ContentSettingsType;
|
| import org.chromium.chrome.browser.util.MathUtils;
|
|
|
| import java.io.Serializable;
|
| @@ -375,9 +376,15 @@ public class Website implements Serializable {
|
| * Sets the Subresource Filter permission.
|
| */
|
| public void setSubresourceFilterPermission(ContentSetting value) {
|
| - if (mSubresourceFilterException != null) {
|
| - mSubresourceFilterException.setContentSetting(value);
|
| + // It is possible to set the permission without having an existing exception, because we can
|
| + // show the BLOCK state even when this permission is set to the default. In that case, just
|
| + // set an exception now to BLOCK to enable changing the permission.
|
| + if (mSubresourceFilterException == null) {
|
| + setSubresourceFilterException(new ContentSettingException(
|
| + ContentSettingsType.CONTENT_SETTINGS_TYPE_SUBRESOURCE_FILTER,
|
| + getAddress().getOrigin(), ContentSetting.BLOCK, ""));
|
| }
|
| + mSubresourceFilterException.setContentSetting(value);
|
| }
|
|
|
| /**
|
|
|