Index: lib/content/elemHideEmulation.js |
=================================================================== |
--- a/lib/content/elemHideEmulation.js |
+++ b/lib/content/elemHideEmulation.js |
@@ -603,17 +603,30 @@ |
for (let stylesheet of stylesheets || []) |
{ |
// Explicitly ignore third-party stylesheets to ensure consistent behavior |
// between Firefox and Chrome. |
if (!this.isSameOrigin(stylesheet)) |
continue; |
- let rules = stylesheet.cssRules; |
+ let rules; |
+ try |
+ { |
+ rules = stylesheet.cssRules; |
+ } |
+ catch (e) |
+ { |
+ // On Firefox, there is a chance that an InvalidAccessError |
+ // get thrown when accessing cssRules. Just skip the stylesheet |
+ // in that case. |
+ // See https://issues.adblockplus.org/ticket/6382 |
+ continue; |
kzar
2018/04/18 16:12:30
I wonder if we should check that the exception rea
hub
2018/04/18 18:48:23
The intent here is to catch the exception to not i
kzar
2018/04/19 07:29:29
Acknowledged.
|
+ } |
+ |
if (!rules) |
continue; |
for (let rule of rules) |
{ |
if (rule.type != rule.STYLE_RULE) |
continue; |