diff options
author | gorhill <rhill@raymondhill.net> | 2014-12-17 10:32:50 -0500 |
---|---|---|
committer | gorhill <rhill@raymondhill.net> | 2014-12-17 10:32:50 -0500 |
commit | b9c1f2e39718236641c503e25a82df0126c5a67f (patch) | |
tree | 1cdb2faac1250dd81e2bf4a3c7e4a17cdbae66e4 /src/js/ublock.js | |
parent | ceb36732cc52beb9bc4e46f47ad3b3497371578b (diff) | |
download | uBlock-b9c1f2e39718236641c503e25a82df0126c5a67f.zip uBlock-b9c1f2e39718236641c503e25a82df0126c5a67f.tar.gz uBlock-b9c1f2e39718236641c503e25a82df0126c5a67f.tar.bz2 |
this fixes #420
Diffstat (limited to 'src/js/ublock.js')
-rw-r--r-- | src/js/ublock.js | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/js/ublock.js b/src/js/ublock.js index 3e48a7f..2b926a6 100644 --- a/src/js/ublock.js +++ b/src/js/ublock.js @@ -314,9 +314,16 @@ var matchWhitelistDirective = function(url, hostname, directive) { } else { changed = this.netFilteringEngine.dynamicFilterUnblock(details.hostname, details.requestType, details.firstParty); } - if ( changed ) { - this.userSettings.dynamicFilteringSelfie = this.netFilteringEngine.selfieFromDynamicFilters(); - this.XAL.keyvalSetOne('dynamicFilteringSelfie', this.userSettings.dynamicFilteringSelfie); + if ( !changed ) { + return; + } + + this.userSettings.dynamicFilteringSelfie = this.netFilteringEngine.selfieFromDynamicFilters(); + this.XAL.keyvalSetOne('dynamicFilteringSelfie', this.userSettings.dynamicFilteringSelfie); + + // https://github.com/gorhill/uBlock/issues/420 + if ( details.requestType === 'sub_frame' && !details.block ) { + this.cosmeticFilteringEngine.removeFromSelectorCache(details.pageHostname, 'net'); } }; |