diff --git a/source b/source index 8432b48587a..22c931161fc 100755 --- a/source +++ b/source @@ -1959,7 +1959,7 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
  1. If nameList contains name, - reject p with a TypeError and abort these steps.

  2. + reject p with a TypeError and return.

  3. Do some potentially lengthy work.

  4. @@ -1988,7 +1988,7 @@ a.setAttribute('href', 'https://example.com/'); // change the content attribute
    1. If nameList contains name, - reject p with a TypeError and abort these steps.

    2. + reject p with a TypeError and return.

    3. Do some potentially lengthy work.

    4. @@ -16871,7 +16871,7 @@ Space is not the only void section, and append it to candidate section. (This does not change which section is the last section in the outline.) Let current section be this new section. Let the element being entered be the - new heading for the current section. Abort these substeps.

      + new heading for the current section.

    5. Let new candidate section be the section that contains candidate section in @@ -18458,7 +18458,7 @@ interface HTMLLIElement : HTMLElement { numbering be 1.

    6. Loop: If i is greater than the number of list items that owner owns, then abort this algorithm; all + data-x="list owner">list items that owner owns, then return; all of owner's owned list items have been assigned ordinal values.

    7. @@ -25736,8 +25736,7 @@ interface HTMLImageElement : HTMLElement { override the outer ones -->
    8. If the image has a title attribute whose value is not - the empty string, then the value of that attribute is the caption information; abort these - steps.

    9. + the empty string, then the value of that attribute is the caption information; return.

    10. If the image is a descendant of a figure element that has a child @@ -27398,7 +27397,7 @@ was an English <a href="/wiki/Music_hall">music hall</a> singer, ... at the img element.

    11. -
    12. ⌛ Abort this algorithm.

    13. +
    14. ⌛ return.

    @@ -27599,8 +27598,7 @@ was an English <a href="/wiki/Music_hall">music hall</a> singer, ... data-x="img-error">broken, fire an event named error at the img element, fire an event named loadend at the img element, and abort these - steps.

    + data-x="event-loadend">loadend at the img element.

  5. @@ -27610,8 +27608,7 @@ was an English <a href="/wiki/Music_hall">music hall</a> singer, ... request for image request, fire an event named error at the img element, fire an event named loadend at the img element, and abort these - steps.

    + data-x="event-loadend">loadend at the img element.

  6. @@ -27783,7 +27780,7 @@ was an English <a href="/wiki/Music_hall">music hall</a> singer, ...
  7. Let el's source set be source set.

  8. -
  9. Abort this algorithm.

  10. +
  11. Return.

@@ -27816,7 +27813,7 @@ was an English <a href="/wiki/Music_hall">music hall</a> singer, ...
  • Let el's source set be source set.

  • -
  • Abort this algorithm.

  • +
  • Return.

  • @@ -28247,7 +28244,7 @@ was an English <a href="/wiki/Music_hall">music hall</a> singer, ...
  • ⌛ If the img element does not use srcset or picture, its node document is not the active document, has image data whose resource type is multipart/x-mixed-replace, or - the pending request is not null, then abort this algorithm.

  • + the pending request is not null, then return.

    @@ -29588,8 +29585,7 @@ interface HTMLIFrameElement : HTMLElement {
  • If there exists an ancestor browsing context whose active document's URL, ignoring fragments, is equal to url, then abort these - steps.

  • + data-x="concept-url-fragment">fragments, is equal to url, then return.

    @@ -30284,8 +30280,7 @@ interface HTMLEmbedElement : HTMLElement {
    1. If another task has since been queued to run - the embed element setup steps for this element, then abort these - steps.

    2. + the embed element setup steps for this element, then return.

    3. @@ -31480,13 +31475,11 @@ interface HTMLVideoElement : HTMLMediaElement { frame.

    4. If the poster attribute's value is the empty string - or if the attribute is absent, then there is no poster frame; abort these - steps.

    5. + or if the attribute is absent, then there is no poster frame; return.

    6. Parse the poster attribute's value relative to the element's node - document. If this fails, then there is no poster frame; abort these - steps.

    7. + document. If this fails, then there is no poster frame; return.

    8. Let request be a new request whose url is the resulting URL record, @@ -35274,8 +35267,7 @@ interface MediaError { remaining steps of this algorithm. (Steps in the synchronous section are marked with ⌛.)

    9. -
    10. ⌛ If the media element is in a document, abort these - steps.

    11. +
    12. ⌛ If the media element is in a document, return.

    13. ⌛ Run the internal pause steps for the media element.

      @@ -43085,8 +43077,7 @@ interface HTMLFormElement : HTMLElement {
        -
      1. If the form element is marked as locked for reset, then abort these - steps.

      2. +
      3. If the form element is marked as locked for reset, then return.

      4. Mark the form element as locked for reset.

      5. @@ -44752,8 +44743,7 @@ interface HTMLInputElement : HTMLElement {

        The activation behavior for input elements are these steps:

          -
        1. If this element is not mutable, then abort these - steps.

        2. +
        3. If this element is not mutable, then return.

        4. Run this element's input activation behavior, if any, and do nothing otherwise.

        5. @@ -44763,8 +44753,7 @@ interface HTMLInputElement : HTMLElement { steps:

            -
          1. If this element is not mutable, then abort these - steps.

          2. +
          3. If this element is not mutable, then return.

          4. If this element's type attribute is in the Checkbox state, then set this element's HTMLInputElement : HTMLElement { steps:

              -
            1. If the element is not mutable, then abort these - steps.

            2. +
            3. If the element is not mutable, then return.

            4. If the element's type attribute is in the Checkbox state, then set the element's

            5. If start is greater than end, then throw an - "IndexSizeError" DOMException and abort these - steps.

            6. + "IndexSizeError" DOMException.

            7. If start is greater than the length of the value of the text control, then set it to the length of the value of the text control.

            8. @@ -55596,8 +55583,7 @@ fur validate the constraints of form and examine the result: if the result is negative (the constraint validation concluded that there were invalid fields and probably informed the user of this) then fire an event named - invalid at the form element and then abort these - steps.

              + invalid at the form element and then return.

            9. If the submitted from submit() method flag @@ -55648,8 +55634,7 @@ fur

            10. Parse the URL action, relative - to the submitter element's node document. If this fails, abort these - steps.

            11. + to the submitter element's node document. If this fails, return.

            12. Let parsed action be the resulting URL record.

            13. @@ -56957,8 +56942,7 @@ interface HTMLDialogElement : HTMLElement { attribute, then throw an "InvalidStateError" DOMException.

            14. If subject is not connected, then throw an - "InvalidStateError" DOMException and abort these - steps.

            15. + "InvalidStateError" DOMException.

            16. Add an open attribute to subject, whose value is the empty string.

            17. @@ -57977,7 +57961,7 @@ o............A....e options.

            18. If this returns null, set the script's - script to null and abort these substeps; the script is ready.

            19. + script to null and return; the script is ready.

            20. Fetch the descendants of and instantiate script, given the destination "BlobCallback = void (Blob? blob);

              1. If this canvas element's context mode is not set to none, throw an - "InvalidStateError" DOMException and abort these - steps.

              2. + "InvalidStateError" DOMException.

              3. Let offscreenCanvas be a new OffscreenCanvas object with its width and height equal to the values of the width @@ -63852,8 +63835,7 @@ v6DVT (also check for '- -' bits in the part above) -->

              4. Let length be the number of bytes in source.

              5. If length is not a nonzero integral multiple of four, then throw an - "InvalidStateError" DOMException and abort these - steps.

              6. + "InvalidStateError" DOMException.

              7. Let length be length divided by four.

                @@ -64018,8 +64000,7 @@ v6DVT (also check for '- -' bits in the part above) -->

                If imagedata's data attribute value's [[Detached]] internal slot value is true, then throw an - "InvalidStateError" DOMException and abort these - steps.

                + "InvalidStateError" DOMException.

              8. @@ -65289,8 +65270,7 @@ interface OffscreenCanvas : EventTarget {
                1. If the value of this OffscreenCanvas object's [[Detached]] internal slot is set to true, then return a promise rejected with an - "InvalidStateError" DOMException and abort these - steps.

                2. + "InvalidStateError" DOMException.

                3. If this OffscreenCanvas object's context mode is OffscreenCanvas : EventTarget {

                4. If this OffscreenCanvas object's bitmap has no pixels (i.e. either its horizontal dimension or its vertical dimension is zero) then return a promise rejected with an - "IndexSizeError" DOMException and abort these - steps.

                5. + "IndexSizeError" DOMException.

                6. Let result be a new promise object.

                7. @@ -65336,8 +65315,7 @@ interface OffscreenCanvas : EventTarget {
                8. If this OffscreenCanvas object's context mode is set to none, then throw an - "InvalidStateError" DOMException and abort these - steps.

                9. + "InvalidStateError" DOMException.

                10. Let image be a newly created ImageBitmap object that references the same underlying bitmap data as this OffscreenCanvas object's

                11. -

                  If element is custom, abort these - steps.

                  +

                  If element is custom, return.

                  This can occur due to reentrant invocation of this algorithm, as in the following @@ -66820,8 +66797,8 @@ customElements.define("x-foo", class extends HTMLElement {

                  1. Add element to the backup element queue.

                  2. -
                  3. If the processing the backup element queue flag is set, abort this - algorithm.

                  4. +
                  5. If the processing the backup element queue flag is set, return. +

                  6. Set the processing the backup element queue flag.

                  7. @@ -70805,10 +70782,10 @@ Demos:
                      -
                    1. If there are no properties named subname in subitem, then abort these substeps, returning the empty string.

                    2. +
                    3. If there are no properties named subname in subitem, then return the empty string.

                    4. If the value of the first property named subname in subitem is an item, then abort these substeps, returning the empty string.

                    5. + data-x="concept-item">item, then return the empty string.

                    6. Return the result of escaping the vCard text string given by the value of the first property named subname in subitem.

                    7. @@ -72268,8 +72245,7 @@ END:VCARD
                    8. If this element is a form control that is disabled, then return.

                    9. -
                    10. If this element's click in progress flag is set, then abort these - steps.

                    11. +
                    12. If this element's click in progress flag is set, then return.

                    13. Set this element's click in progress flag.

                    14. @@ -72970,8 +72946,7 @@ END:VCARD -
                    15. If old focus target is inert, then abort these - steps.

                    16. +
                    17. If old focus target is inert, then return.

                    18. @@ -75229,8 +75204,7 @@ body { display:none } store, return the empty string.

                    19. If the drag data store's mode is - the protected mode, return the empty string and abort these - steps.

                    20. + the protected mode, return the empty string.

                    21. Let format be the first argument, converted to ASCII lowercase.

                    22. @@ -75540,7 +75514,7 @@ DND-v5: DataTransferItem? type string is equal to the value of the method's second argument, converted to ASCII lowercase, and whose data is a structured clone of the method's first argument. If creating the clone throws an exception, then throw that - exception and abort these steps.

                      + exception.

                      --> @@ -75562,8 +75536,7 @@ DND-v5: DataTransferItem? read/write mode, throw an - "InvalidStateError" DOMException and abort these - steps.

                      + "InvalidStateError" DOMException.

                    23. Remove the ith item from the drag data store.

                    24. @@ -75696,8 +75669,7 @@ callback FunctionObjectCallback = void (any data);--> data-x="concept-dnd-rw">read/write mode or the read-only mode, return. The callback is never invoked.

                      -
                    25. If the drag data item kind is not Plain Unicode string, abort these - steps. The callback is never invoked.

                    26. +
                    27. If the drag data item kind is not Plain Unicode string, then return. The callback is never invoked.

                    28. Otherwise, queue a task to invoke callback, passing the actual data of the item represented by the DataTransferItem object as the @@ -76178,7 +76150,7 @@ dictionary DragEventInit : MouseEventInit {

                    29. -
                    30. If urls is still empty, abort these substeps.

                    31. +
                    32. If urls is still empty, then return.

                    33. Let url string be the result of concatenating the strings in urls, in the order they were added, separated by a U+000D CARRIAGE RETURN U+000A LINE FEED character @@ -76221,8 +76193,7 @@ dictionary DragEventInit : MouseEventInit {

                      Fire a DND event named dragstart at the source node.

                      -

                      If the event is canceled, then the drag-and-drop operation should not occur; abort these - steps.

                      Since events with no event listeners registered are, almost by definition, never @@ -77527,8 +77498,7 @@ console.assert(iframeWindow.frameElement === null);

                      1. If this algorithm is triggered by user activation and A's active document's active sandboxing flag set has its sandboxed - top-level navigation with user activation browsing context flag set, then abort these - steps negatively.

                      2. + top-level navigation with user activation browsing context flag set, then return.

                      3. Otherwise, If this algorithm is not triggered by user activation and A's active document's active sandboxing flag set has its @@ -81939,8 +81909,7 @@ interface Location { // but see also navigation algorithm gets canceled while this step is running, the prompt to unload algorithm must nonetheless be run @@ -82371,7 +82340,7 @@ interface Location { // but see also HTML document section, - and then, once they have completed, abort this navigate algorithm. + and then, once they have completed, return.

                        an XML MIME type that is not an explicitly supported XML type
                        @@ -82379,8 +82348,8 @@ interface Location { // but see also XML document section. If that section determines that the content is not to be displayed as a generic XML document, then proceed to the next step in this overall set of steps. Otherwise, once the steps - given in the XML document section have completed, abort this - navigate algorithm. + given in the XML document section have completed, return. +
                        a JavaScript MIME type
                        a JSON MIME type that is not an explicitly supported JSON @@ -82390,21 +82359,21 @@ interface Location { // but see also text/plain"
                        "text/vtt"
                        Follow the steps given in the plain text file section, - and then, once they have completed, abort this navigate algorithm.
                        + and then, once they have completed, return.
                        "multipart/x-mixed-replace"
                        Follow the steps given in the multipart/x-mixed-replace section, and then, - once they have completed, abort this navigate algorithm.
                        + once they have completed, return.
                        A supported image, video, or audio type
                        Follow the steps given in the media section, and then, - once they have completed, abort this navigate algorithm.
                        + once they have completed, return.
                        A type that will use an external application to render the content in browsingContext
                        Follow the steps given in the plugin section, and then, - once they have completed, abort this navigate algorithm.
                        + once they have completed, return navigate. @@ -82525,8 +82494,7 @@ interface Location { // but see also

                        Non-document content: If, given type, the new resource is to be handled by displaying some sort of inline content, e.g., a native rendering of the content or an error message because the specified type is not supported, then display the inline content, and then abort these - steps.

                      4. + data-x="navigate-ua-inline">display the inline content, and then return.

                      5. Otherwise, the document's type is such that the resource will not affect browsingContext, e.g., because the resource is to be handed to an external application @@ -83235,8 +83203,8 @@ interface Location { // but see also position to the - next character after those. Otherwise, this isn't a cache manifest; abort this algorithm with a + next character after those. Otherwise, this isn't a cache manifest; return with a failure while checking for the magic signature.

                      6. If the character at position is neither a U+0020 SPACE character, a U+0009 CHARACTER TABULATION (tab) character, U+000A LINE FEED (LF) character, nor a U+000D - CARRIAGE RETURN (CR) character, then this isn't a cache manifest; abort this algorithm with a + CARRIAGE RETURN (CR) character, then this isn't a cache manifest; return with a failure while checking for the magic signature.

                      7. This is a cache manifest. The algorithm cannot fail beyond @@ -85338,7 +85306,7 @@ NETWORK:

                        If these steps are being run in parallel for any other URLs in file - list, then abort these steps for those other URLs. Run the cache failure + list, then abort this algorithm for those other URLs. Run the cache failure steps.

                        Redirects are fatal because they are either indicative of a network problem @@ -86168,8 +86136,7 @@ interface ApplicationCache : EventTarget {

                      8. Check that ApplicationCache object's cache host is associated with an application cache. If it is not, then throw an - "InvalidStateError" DOMException and abort these - steps.

                      9. + "InvalidStateError" DOMException and return.

                      10. Let cache be the application cache with which the ApplicationCache object's cache host is associated. (By definition, @@ -86764,7 +86731,7 @@ interface NavigatorOnLine {

                      11. If response's type is "error", or response's status is not an ok status, asynchronously - complete this algorithm with null, and abort these steps.

                      12. + complete this algorithm with null, and return.

                      13. If response's Content Type metadata, if any, specifies a character encoding, and the user agent supports that encoding, then set @@ -86825,7 +86792,7 @@ interface NavigatorOnLine {

                      14. If response's type is "error", or response's status is not an ok status, asynchronously - complete this algorithm with null, and abort these steps.

                      15. + complete this algorithm with null, and return.

                      16. Let source text be the result of UTF-8 decoding response's body.

                      17. @@ -86992,8 +86959,7 @@ interface NavigatorOnLine { the networking task source to proceed with running the following steps.

                      18. If moduleMap[url] exists, - asynchronously complete this algorithm with moduleMap[url], and abort these - steps.

                      19. + asynchronously complete this algorithm with moduleMap[url], and return.

                      20. Set moduleMap[url] to "fetching".

                        @@ -87028,7 +86994,7 @@ interface NavigatorOnLine {
                      21. If any of the following conditions are met, set moduleMap[url] to null, asynchronously complete this algorithm with null, - and abort these steps:

                        + and return:

                        • response's type is "NavigatorOnLine {

                          1. If module script's record is null, - then asynchronously complete this algorithm with module script and abort these - steps.

                          2. + then asynchronously complete this algorithm with module script and return.

                          3. Let record be module script's record.

                          4. @@ -88647,8 +88612,7 @@ import "https://example.com/foo/../module2.js";
                              -
                            1. If target is in error reporting mode, then abort these - steps; the error is not handled.

                            2. +
                            3. If target is in error reporting mode, then return; the error is not handled.

                            4. Let target be in error reporting mode.

                            5. @@ -90932,8 +90896,7 @@ document.body.appendChild(frame)
                            6. Insert an explicit "EOF" character at the end of the parser's input stream.

                            7. -
                            8. If there is a pending parsing-blocking script, then abort these - steps.

                            9. +
                            10. If there is a pending parsing-blocking script, then return.

                            11. Run the tokenizer, processing resulting tokens as they are emitted, and stopping when the tokenizer reaches the explicit "EOF" character or task's substeps.

                            12. + has been cleared, then return task's substeps.

                            13. @@ -92243,8 +92206,7 @@ interface NavigatorContentUtils {

                              The second argument must be preprocessed as follows:

                                -
                              1. If the string does not contain the substring "%s", abort these - steps. There's no matching handler.

                              2. +
                              3. If the string does not contain the substring "%s", return. There's no matching handler.

                              4. Parse the string relative to the relevant settings object of this NavigatorContentUtils object. If this fails, then throw a @@ -93077,15 +93039,13 @@ dictionary ImageBitmapOptions {

                              5. If the video element's networkState attribute is NETWORK_EMPTY, then return a promise rejected with an - "InvalidStateError" DOMException and abort these - steps.

                              6. + "InvalidStateError" DOMException.

                              7. If the video element's readyState attribute is either HAVE_NOTHING or HAVE_METADATA, then return a promise rejected with an - "InvalidStateError" DOMException and abort these - steps.

                              8. + "InvalidStateError" DOMException.

                              9. Create a new ImageBitmap object.

                              10. @@ -93122,8 +93082,7 @@ dictionary ImageBitmapOptions {
                              11. If the canvas element's bitmap has either a horizontal dimension or a vertical dimension equal to zero, then return a promise rejected with an - "InvalidStateError" DOMException and abort these - steps.

                              12. + "InvalidStateError" DOMException.

                              13. Create a new ImageBitmap object.

                              14. @@ -93162,8 +93121,7 @@ dictionary ImageBitmapOptions {
                              15. Read the Blob object's data. If an error occurs during reading of the object, then reject the promise with an - "InvalidStateError" DOMException, and abort these - steps.

                              16. + "InvalidStateError" DOMException, and return.

                              17. Apply the image sniffing rules to determine the file format of the image data, with MIME type of the Blob (as given @@ -93205,8 +93163,7 @@ dictionary ImageBitmapOptions {

                              18. If the image object's data attribute value's [[Detached]] internal slot value is true, return a promise rejected with - an "InvalidStateError" DOMException and abort these - steps.

                              19. + an "InvalidStateError" DOMException.

                              20. Create a new ImageBitmap object.

                              21. @@ -98097,7 +98054,7 @@ interface SharedWorker : EventTarget {
                              22. If workerIsSecureContext is not callerIsSecureContext, then queue a task to fire an event named - error at worker and abort these subsubsteps. + error at worker abort these subsubsteps.

                              23. Associate worker with worker global scope.

                              24. @@ -100883,12 +100840,11 @@ dictionary StorageEventInit : EventInit { new document).

                              25. If parent document's origin is not the same - origin as new document's origin, then abort these - substeps.

                              26. + origin as new document's origin, then abort these substeps.

                              27. If parent document's character encoding is not an ASCII-compatible encoding, then - abort these substeps.

                              28. + encoding">character encoding is not an ASCII-compatible encoding, then abort these + substeps.

                              29. Return parent document's character encoding, with the StorageEventInit : EventInit {

                              30. Otherwise, if the user agent has information on the likely encoding for this page, e.g. based on the encoding of the page when it was last visited, then return that encoding, with the - confidence tentative, and abort these - steps.

                              31. + confidence tentative.

                              32. @@ -101755,8 +101710,7 @@ dictionary StorageEventInit : EventInit { supports changing the converter on the fly, then the user agent may change to the new converter for the encoding on the fly. Set the document's character encoding and the encoding used to convert the input stream to the new encoding, set the confidence to certain, and abort these - steps.

                              33. + data-x="concept-encoding-confidence">confidence to certain, and return.

                              34. Otherwise, navigate to the document again, with replacement enabled, and using the same source browsing context, but @@ -101935,8 +101889,7 @@ dictionary StorageEventInit : EventInit { data-x="insertion mode: in cell">in cell" and return.

                              35. If node is a tr element, then switch the insertion - mode to "in row" and abort these - steps.

                              36. + mode to "in row" and return.

                              37. If node is a tbody, thead, or tfoot element, then switch the insertion mode to "StorageEventInit : EventInit { insertion mode to "in table" and return.

                              38. If node is a template element, then switch the - insertion mode to the current template insertion mode and abort these - steps.

                              39. + insertion mode to the current template insertion mode and return.

                              40. If last table has a parent node, then let adjusted insertion location be inside last table's parent - node, immediately before last table, and abort these - substeps.

                              41. + node, immediately before last table, and abort these substeps.

                                @@ -109416,8 +109367,8 @@ document.body.appendChild(text);
                                  -
                                1. If the Document's page showing flag is true, then abort this - task (i.e. don't fire the event below).

                                2. Set the Document's page showing flag to true.