@@ -2072,6 +2072,7 @@ export function isAnchoredByHostname(
20722072 */
20732073function checkPattern ( filter : NetworkFilter , request : Request ) : boolean {
20742074 const pattern = filter . getFilter ( ) ;
2075+ const url = request . normalizedUrl ;
20752076
20762077 if ( filter . isHostnameAnchor ( ) === true ) {
20772078 // Make sure request is anchored by hostname before proceeding to matching
@@ -2091,15 +2092,13 @@ function checkPattern(filter: NetworkFilter, request: Request): boolean {
20912092 // ||pattern*^
20922093 return filter
20932094 . getRegex ( )
2094- . test ( request . url . slice ( request . url . indexOf ( filterHostname ) + filterHostname . length ) ) ;
2095+ . test ( url . slice ( url . indexOf ( filterHostname ) + filterHostname . length ) ) ;
20952096 } else if ( filter . isRightAnchor ( ) && filter . isLeftAnchor ( ) ) {
20962097 // |||pattern|
20972098 // Since this is not a regex, the filter pattern must follow the hostname
20982099 // with nothing in between. So we extract the part of the URL following
20992100 // after hostname and will perform the matching on it.
2100- const urlAfterHostname = request . url . slice (
2101- request . url . indexOf ( filterHostname ) + filterHostname . length ,
2102- ) ;
2101+ const urlAfterHostname = url . slice ( url . indexOf ( filterHostname ) + filterHostname . length ) ;
21032102
21042103 // Since it must follow immediatly after the hostname and be a suffix of
21052104 // the URL, we conclude that filter must be equal to the part of the
@@ -2119,49 +2118,43 @@ function checkPattern(filter: NetworkFilter, request: Request): boolean {
21192118 ) ;
21202119 } else {
21212120 // pattern|
2122- return request . url . endsWith ( pattern ) ;
2121+ return url . endsWith ( pattern ) ;
21232122 }
21242123 } else if ( filter . isLeftAnchor ( ) ) {
21252124 // ||pattern + left-anchor => This means that a plain pattern needs to appear
21262125 // exactly after the hostname, with nothing in between.
21272126 // Since this is not a regex, the filter pattern must follow the hostname
21282127 // with nothing in between. So we extract the part of the URL following
21292128 // after hostname and will perform the matching on it.
2130- return request . url . startsWith (
2131- pattern ,
2132- request . url . indexOf ( filterHostname ) + filterHostname . length ,
2133- ) ;
2129+ return url . startsWith ( pattern , url . indexOf ( filterHostname ) + filterHostname . length ) ;
21342130 }
21352131
21362132 if ( filter . hasFilter ( ) === false ) {
21372133 return true ;
21382134 }
21392135
21402136 // We consider this a match if the plain patter (i.e.: filter) appears anywhere.
2141- return (
2142- request . url . indexOf ( pattern , request . url . indexOf ( filterHostname ) + filterHostname . length ) !==
2143- - 1
2144- ) ;
2137+ return url . indexOf ( pattern , url . indexOf ( filterHostname ) + filterHostname . length ) !== - 1 ;
21452138 } else if ( filter . isRegex ( ) ) {
21462139 // pattern*^
2147- return filter . getRegex ( ) . test ( request . url ) ;
2140+ return filter . getRegex ( ) . test ( url ) ;
21482141 } else if ( filter . isLeftAnchor ( ) && filter . isRightAnchor ( ) ) {
21492142 // |pattern|
2150- return request . url === pattern ;
2143+ return url === pattern ;
21512144 } else if ( filter . isLeftAnchor ( ) ) {
21522145 // |pattern
2153- return request . url . startsWith ( pattern ) ;
2146+ return url . startsWith ( pattern ) ;
21542147 } else if ( filter . isRightAnchor ( ) ) {
21552148 // pattern|
2156- return request . url . endsWith ( pattern ) ;
2149+ return url . endsWith ( pattern ) ;
21572150 }
21582151
21592152 // pattern
21602153 if ( filter . hasFilter ( ) === false ) {
21612154 return true ;
21622155 }
21632156
2164- return request . url . indexOf ( pattern ) !== - 1 ;
2157+ return url . indexOf ( pattern ) !== - 1 ;
21652158}
21662159
21672160function checkOptions ( filter : NetworkFilter , request : Request ) : boolean {
0 commit comments