diff --git a/url.bs b/url.bs index 2f90f793..c84d7fa8 100644 --- a/url.bs +++ b/url.bs @@ -1278,8 +1278,9 @@ null or an ASCII string. It is initially null. an ASCII string that can be used for further processing on the resource the URL's other components identify. It is initially null. -

A URL also has an associated -cannot-be-a-base-URL flag. It is initially unset. +

A URL also has an associated boolean +cannot-be-a-base-URL. It is initially +false.

A URL also has an associated blob URL entry that is either null or a @@ -1305,7 +1306,7 @@ need to succeed. Path Query Fragment - Cannot-be-a-base-URL flag + Cannot-be-a-base-URL https://example.com/ "https" @@ -1314,7 +1315,7 @@ need to succeed. « the empty string » null null - unset + false https://localhost:8000/search?q=text#hello "https" @@ -1323,7 +1324,7 @@ need to succeed. « "search" » "q=text" "hello" - unset + false urn:isbn:9780307476463 "urn" @@ -1332,7 +1333,7 @@ need to succeed. « "isbn:9780307476463" » null null - set + true file:///ada/Analytical%20Engine/README.md "file" @@ -1341,7 +1342,7 @@ need to succeed. « "ada", "Analytical%20Engine", "README.md" » null null - unset + false @@ -1373,8 +1374,8 @@ not a special scheme.

A URL cannot have a username/password/port if its -host is null or the empty string, its cannot-be-a-base-URL flag is -set, or its scheme is "file". +host is null or the empty string, its cannot-be-a-base-URL is true, or +its scheme is "file".

A URL can be designated as base URL. @@ -1699,8 +1700,8 @@ string input, optionally with a base URL base, opti

  • Let buffer be the empty string. -

  • Let the @ flag, [] flag, and passwordTokenSeenFlag be - unset. +

  • Let atSignSeen, insideBrackets, and passwordTokenSeen be + false.

  • Let pointer be a pointer for input. @@ -1783,8 +1784,8 @@ string input, optionally with a base URL base, opti base's scheme is equal to url's scheme, set state to special relative or authority state. -

    This means that base's - cannot-be-a-base-URL flag is unset. +

    This means that base's cannot-be-a-base-URL is + false.

  • Otherwise, if url is special, set state to special authority slashes state. @@ -1792,7 +1793,7 @@ string input, optionally with a base URL base, opti

  • Otherwise, if remaining starts with an U+002F (/), set state to path or authority state and increase pointer by 1. -

  • Otherwise, set url's cannot-be-a-base-URL flag, +

  • Otherwise, set url's cannot-be-a-base-URL to true, append an empty string to url's path, and set state to cannot-be-a-base-URL path state. @@ -1813,19 +1814,18 @@ string input, optionally with a base URL base, opti

    no scheme state
      -
    1. If base is null, or base's - cannot-be-a-base-URL flag is set and c is not U+0023 (#), - validation error, return failure. +

    2. If base is null, or base's cannot-be-a-base-URL is + true and c is not U+0023 (#), validation error, return failure. -

    3. Otherwise, if base's cannot-be-a-base-URL flag is set and - c is U+0023 (#), set url's scheme to +

    4. Otherwise, if base's cannot-be-a-base-URL is true and c + is U+0023 (#), set url's scheme to base's scheme, url's path to a clone of base's path, url's query to base's query, url's fragment to the empty string, set - url's cannot-be-a-base-URL flag, and set state to + url's cannot-be-a-base-URL to true, and set state to fragment state.

    5. Otherwise, if base's scheme is not "file", set @@ -1957,24 +1957,24 @@ string input, optionally with a base URL base, opti

      1. Validation error. -

      2. If the @ flag is set, prepend "%40" to +

      3. If atSignSeen is true, then prepend "%40" to buffer. -

      4. Set the @ flag. +

      5. Set atSignSeen to true.

      6. For each codePoint in buffer:

          -
        1. If codePoint is U+003A (:) and passwordTokenSeenFlag is - unset, then set passwordTokenSeenFlag and continue. +

        2. If codePoint is U+003A (:) and passwordTokenSeen is false, + then set passwordTokenSeen to true and continue.

        3. Let encodedCodePoints be the result of running UTF-8 percent-encode codePoint using the userinfo percent-encode set. -

        4. If passwordTokenSeenFlag is set, then append encodedCodePoints - to url's password. +

        5. If passwordTokenSeen is true, then append encodedCodePoints to + url's password.

        6. Otherwise, append encodedCodePoints to url's username. @@ -1994,7 +1994,7 @@ string input, optionally with a base URL base, opti

          then:

            -
          1. If @ flag is set and buffer is the empty string, +

          2. If atSignSeen is true and buffer is the empty string, validation error, return failure.