Skip to content

Commit

Permalink
Use the basic URL parser when parsing URLs
Browse files Browse the repository at this point in the history
Use the basic URL parser when parsing URLs

Blob handling is not required, since the resulting URL is not stored in
any way that would make the blob handling visible. This is consistent
with what the URL constructor and similar uses do.

This change should not be observable.

Partially addresses #242.
  • Loading branch information
jeremyroman authored Jan 9, 2025
1 parent f9b4a8a commit 541a853
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions spec.bs
Original file line number Diff line number Diff line change
Expand Up @@ -513,10 +513,10 @@ A <dfn>component</dfn> is a [=struct=] with the following [=struct/items=]:
1. If |input| is a {{USVString}}:
1. Let |baseURL| be null.
1. If |baseURLString| was given, then:
1. Set |baseURL| to the result of [=URL parser|parsing=] |baseURLString|.
1. Set |baseURL| to the result of running the [=basic URL parser=] on |baseURLString|.
1. If |baseURL| is failure, return null.
1. [=list/Append=] |baseURLString| to |inputs|.
1. Set |url| to the result of [=URL parser|parsing=] |input| given |baseURL|.
1. Set |url| to the result of running the [=basic URL parser=] on |input| with |baseURL|.
1. If |url| is failure, return null.
1. [=Assert=]: |url| is a [=/URL=].
1. Set |protocol| to |url|'s [=url/scheme=].
Expand Down Expand Up @@ -1852,7 +1852,7 @@ To <dfn>convert a modifier to a string</dfn> given a [=part/modifier=] |modifier

Username and password are also never inherited from a base URL when constructing a {{URLPattern}}. (They are, however, inherited from the base URL when parsing a URL supplied as an argument to {{URLPattern/test()}} or {{URLPattern/exec()}}.)
</div>
1. Set |baseURL| to the result of [=URL parser|parsing=] |init|["{{URLPatternInit/baseURL}}"].
1. Set |baseURL| to the result of running the [=basic URL parser=] on |init|["{{URLPatternInit/baseURL}}"].
1. If |baseURL| is failure, then throw a {{TypeError}}.
1. If |init|["{{URLPatternInit/protocol}}"] does not [=map/exist=], then set |result|["{{URLPatternInit/protocol}}"] to the result of [=processing a base URL string=] given |baseURL|'s [=url/scheme=] and |type|.
1. If |type| is not "`pattern`" and |init| [=map/contains=] none of "{{URLPatternInit/protocol}}", "{{URLPatternInit/hostname}}", "{{URLPatternInit/port}}" and "{{URLPatternInit/username}}", then set |result|["{{URLPatternInit/username}}"] to the result of [=processing a base URL string=] given |baseURL|'s [=url/username=] and |type|.
Expand Down

0 comments on commit 541a853

Please sign in to comment.