⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 284883 in webkit


Ignore:
Timestamp:
Oct 26, 2021, 11:26:50 AM (5 years ago)
Author:
Chris Dumez
Message:

<link> elements should be able to fire more than one load / error event
https://bugs.webkit.org/show_bug.cgi?id=232309

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

Rebaseline WPT tests that are now passing.

  • web-platform-tests/html/semantics/document-metadata/the-link-element/link-multiple-error-events-expected.txt:
  • web-platform-tests/html/semantics/document-metadata/the-link-element/link-multiple-load-events-expected.txt:

Source/WebCore:

We had logic to only fire a single load / error event for <link> elements, even
though they could do several loads. This logic is not part of the specification
and was causing us to fail some WPT tests.

No new tests, unskipped existing tests.

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::HTMLLinkElement):
(WebCore::HTMLLinkElement::notifyLoadedSheetAndAllCriticalSubresources):

  • html/HTMLLinkElement.h:

LayoutTests:

Unskip tests that are no longer timing out.

Location:
trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r284882 r284883  
     12021-10-26  Chris Dumez  <cdumez@apple.com>
     2
     3        <link> elements should be able to fire more than one load / error event
     4        https://bugs.webkit.org/show_bug.cgi?id=232309
     5
     6        Reviewed by Darin Adler.
     7
     8        Unskip tests that are no longer timing out.
     9
     10        * TestExpectations:
     11
    1122021-10-26  Eric Hutchison  <ehutchison@apple.com>
    213
  • trunk/LayoutTests/TestExpectations

    r284869 r284883  
    613613imported/w3c/web-platform-tests/html/canvas/element/fill-and-stroke-styles/2d.pattern.transform.infinity.html [ Skip ]
    614614imported/w3c/web-platform-tests/html/rendering/replaced-elements/svg-inline-sizing/svg-inline.html [ Skip ]
    615 imported/w3c/web-platform-tests/html/semantics/document-metadata/the-link-element/link-multiple-error-events.html [ Skip ]
    616 imported/w3c/web-platform-tests/html/semantics/document-metadata/the-link-element/link-multiple-load-events.html [ Skip ]
    617615imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_navigate_ancestor-1.sub.html [ Skip ]
    618616imported/w3c/web-platform-tests/html/semantics/forms/historical-search-event.html [ Skip ]
  • trunk/LayoutTests/imported/w3c/ChangeLog

    r284876 r284883  
     12021-10-26  Chris Dumez  <cdumez@apple.com>
     2
     3        <link> elements should be able to fire more than one load / error event
     4        https://bugs.webkit.org/show_bug.cgi?id=232309
     5
     6        Reviewed by Darin Adler.
     7
     8        Rebaseline WPT tests that are now passing.
     9
     10        * web-platform-tests/html/semantics/document-metadata/the-link-element/link-multiple-error-events-expected.txt:
     11        * web-platform-tests/html/semantics/document-metadata/the-link-element/link-multiple-load-events-expected.txt:
     12
    1132021-10-26  Ziran Sun  <zsun@igalia.com>
    214
  • trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-link-element/link-multiple-error-events-expected.txt

    r253791 r284883  
    11
    2 Harness Error (TIMEOUT), message = null
     2PASS Check if the <link>'s error event fires for each stylesheet it fails to load
    33
    4 TIMEOUT Check if the <link>'s error event fires for each stylesheet it fails to load Test timed out
    5 
  • trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/document-metadata/the-link-element/link-multiple-load-events-expected.txt

    r253791 r284883  
    11
    2 Harness Error (TIMEOUT), message = null
     2PASS Check if the <link>'s load event fires for each stylesheet it loads
    33
    4 TIMEOUT Check if the <link>'s load event fires for each stylesheet it loads Test timed out
    5 
  • trunk/Source/WebCore/ChangeLog

    r284876 r284883  
     12021-10-26  Chris Dumez  <cdumez@apple.com>
     2
     3        <link> elements should be able to fire more than one load / error event
     4        https://bugs.webkit.org/show_bug.cgi?id=232309
     5
     6        Reviewed by Darin Adler.
     7
     8        We had logic to only fire a single load / error event for <link> elements, even
     9        though they could do several loads. This logic is not part of the specification
     10        and was causing us to fail some WPT tests.
     11
     12        No new tests, unskipped existing tests.
     13
     14        * html/HTMLLinkElement.cpp:
     15        (WebCore::HTMLLinkElement::HTMLLinkElement):
     16        (WebCore::HTMLLinkElement::notifyLoadedSheetAndAllCriticalSubresources):
     17        * html/HTMLLinkElement.h:
     18
    1192021-10-26  Ziran Sun  <zsun@igalia.com>
    220
  • trunk/Source/WebCore/html/HTMLLinkElement.cpp

    r284080 r284883  
    9393    , m_loading(false)
    9494    , m_createdByParser(createdByParser)
    95     , m_firedLoad(false)
    9695    , m_loadedResource(false)
    9796    , m_isHandlingBeforeLoad(false)
     
    565564void HTMLLinkElement::notifyLoadedSheetAndAllCriticalSubresources(bool errorOccurred)
    566565{
    567     if (m_firedLoad)
    568         return;
    569566    m_loadedResource = !errorOccurred;
    570567    linkLoadEventSender().dispatchEventSoon(*this);
    571     m_firedLoad = true;
    572568}
    573569
  • trunk/Source/WebCore/html/HTMLLinkElement.h

    r282026 r284883  
    149149    bool m_loading : 1;
    150150    bool m_createdByParser : 1;
    151     bool m_firedLoad : 1;
    152151    bool m_loadedResource : 1;
    153152    bool m_isHandlingBeforeLoad : 1;
Note: See TracChangeset for help on using the changeset viewer.