Index: lib/filterClasses.js |
=================================================================== |
--- a/lib/filterClasses.js |
+++ b/lib/filterClasses.js |
@@ -874,27 +874,30 @@ |
(this.thirdParty == null || this.thirdParty == thirdParty) && |
this.isActiveOnDomain(docDomain, sitekey) && |
this.matchesLocation(location); |
}, |
/** |
* Checks whether the given URL matches this filter's pattern. |
* @param {string} location The URL to check. |
+ * @param {?string} [lowerCaseLocation] The lower-case version of the URL to |
+ * check, for case-insensitive matching. |
* @returns {boolean} <code>true</code> if the URL matches. |
+ * @package |
*/ |
- matchesLocation(location) |
+ matchesLocation(location, lowerCaseLocation) |
{ |
let {regexp} = this; |
if (regexp) |
return regexp.test(location); |
if (!this.matchCase) |
- location = location.toLowerCase(); |
+ location = lowerCaseLocation || location.toLowerCase(); |
let {pattern} = this; |
let startsWithDoubleAnchor = pattern[0] == "|" && pattern[1] == "|"; |
let endsWithSeparator = pattern[pattern.length - 1] == "^"; |
if (startsWithDoubleAnchor) |
pattern = pattern.substr(2); |