Changeset 247481 in webkit


Ignore:
Timestamp:
Jul 16, 2019, 8:55:05 AM (6 years ago)
Author:
commit-queue@webkit.org
Message:

Remove support for beforeload on link=prefetch
https://bugs.webkit.org/show_bug.cgi?id=199632

Patch by Rob Buis <rbuis@igalia.com> on 2019-07-16
Reviewed by Youenn Fablet.

Source/WebCore:

Remove support for beforeload on link=prefetch
by not calling shouldLoadLink for prefetch.
Also make loadLink return void since it always
succeeds.

Tests: http/wpt/prefetch/beforeload-dynamic.html

http/wpt/prefetch/beforeload.html

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::process):

  • loader/LinkLoader.cpp:

(WebCore::LinkLoader::prefetchIfNeeded):
(WebCore::LinkLoader::loadLink):

  • loader/LinkLoader.h:

LayoutTests:

Add tests to verify that beforeload event is not called for link
rel=prefetch.

  • TestExpectations:
  • fast/dom/HTMLLinkElement/prefetch-beforeload-expected.txt: Removed.
  • fast/dom/HTMLLinkElement/prefetch-beforeload.html: Removed.
  • http/wpt/prefetch/beforeload-dynamic-expected.txt: Added.
  • http/wpt/prefetch/beforeload-dynamic.html: Added.
  • http/wpt/prefetch/beforeload-expected.txt: Added.
  • http/wpt/prefetch/beforeload.html: Added.
  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
Location:
trunk
Files:
4 added
2 deleted
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r247475 r247481  
     12019-07-16  Rob Buis  <rbuis@igalia.com>
     2
     3        Remove support for beforeload on link=prefetch
     4        https://bugs.webkit.org/show_bug.cgi?id=199632
     5
     6        Reviewed by Youenn Fablet.
     7
     8        Add tests to verify that beforeload event is not called for link
     9        rel=prefetch.
     10
     11
     12        * TestExpectations:
     13        * fast/dom/HTMLLinkElement/prefetch-beforeload-expected.txt: Removed.
     14        * fast/dom/HTMLLinkElement/prefetch-beforeload.html: Removed.
     15        * http/wpt/prefetch/beforeload-dynamic-expected.txt: Added.
     16        * http/wpt/prefetch/beforeload-dynamic.html: Added.
     17        * http/wpt/prefetch/beforeload-expected.txt: Added.
     18        * http/wpt/prefetch/beforeload.html: Added.
     19        * platform/mac-wk1/TestExpectations:
     20        * platform/win/TestExpectations:
     21
    1222019-07-15  Ryan Haddad  <ryanhaddad@apple.com>
    223
  • trunk/LayoutTests/TestExpectations

    r247377 r247481  
    23342334webkit.org/b/3652 fast/dom/HTMLLinkElement/link-and-subresource-test-nonexistent.html [ Skip ]
    23352335webkit.org/b/3652 fast/dom/HTMLLinkElement/prefetch.html [ Skip ]
    2336 webkit.org/b/3652 fast/dom/HTMLLinkElement/prefetch-beforeload.html [ Skip ]
    23372336webkit.org/b/3652 fast/dom/HTMLLinkElement/prefetch-onerror.html [ Skip ]
    23382337webkit.org/b/3652 fast/dom/HTMLLinkElement/prefetch-onload.html [ Skip ]
  • trunk/LayoutTests/platform/mac-wk1/TestExpectations

    r247295 r247481  
    737737webkit.org/b/197371 http/wpt/prefetch/link-prefetch-main-resource-redirect.html [ Skip ]
    738738
     739webkit.org/b/199632 http/wpt/prefetch/beforeload.html [ Skip ]
     740webkit.org/b/199632 http/wpt/prefetch/beforeload-dynamic.html [ Skip ]
     741
    739742webkit.org/b/198177 pointerevents/mouse/compatibility-mouse-events-prevention-mouse-pressed.html [ Skip ]
    740743
  • trunk/LayoutTests/platform/win/TestExpectations

    r247457 r247481  
    44214421webkit.org/b/197371 http/wpt/prefetch/link-prefetch-main-resource-redirect.html [ Skip ]
    44224422
     4423webkit.org/b/199632 http/wpt/prefetch/beforeload.html [ Skip ]
     4424webkit.org/b/199632 http/wpt/prefetch/beforeload-dynamic.html [ Skip ]
     4425
    44234426webkit.org/b/198112 http/tests/security/showModalDialog-sync-cross-origin-page-load2.html [ Skip ]
    44244427
  • trunk/Source/WebCore/ChangeLog

    r247480 r247481  
     12019-07-16  Rob Buis  <rbuis@igalia.com>
     2
     3        Remove support for beforeload on link=prefetch
     4        https://bugs.webkit.org/show_bug.cgi?id=199632
     5
     6        Reviewed by Youenn Fablet.
     7
     8        Remove support for beforeload on link=prefetch
     9        by not calling shouldLoadLink for prefetch.
     10        Also make loadLink return void since it always
     11        succeeds.
     12
     13        Tests: http/wpt/prefetch/beforeload-dynamic.html
     14               http/wpt/prefetch/beforeload.html
     15
     16        * html/HTMLLinkElement.cpp:
     17        (WebCore::HTMLLinkElement::process):
     18        * loader/LinkLoader.cpp:
     19        (WebCore::LinkLoader::prefetchIfNeeded):
     20        (WebCore::LinkLoader::loadLink):
     21        * loader/LinkLoader.h:
     22
    1232019-07-16  Youenn Fablet  <youenn@apple.com>
    224
  • trunk/Source/WebCore/html/HTMLLinkElement.cpp

    r246786 r247481  
    274274    };
    275275
    276     if (!m_linkLoader.loadLink(params, document()))
    277         return;
     276    m_linkLoader.loadLink(params, document());
    278277
    279278    bool treatAsStyleSheet = m_relAttribute.isStyleSheet
  • trunk/Source/WebCore/loader/LinkLoader.cpp

    r246786 r247481  
    284284void LinkLoader::prefetchIfNeeded(const LinkLoadParameters& params, Document& document)
    285285{
    286     if (!params.relAttribute.isLinkPrefetch || !params.href.isValid() || !document.frame() || !m_client.shouldLoadLink())
     286    if (!params.href.isValid() || !document.frame())
    287287        return;
    288288
     
    317317}
    318318
    319 bool LinkLoader::loadLink(const LinkLoadParameters& params, Document& document)
     319void LinkLoader::loadLink(const LinkLoadParameters& params, Document& document)
    320320{
    321321    if (params.relAttribute.isDNSPrefetch) {
     
    327327
    328328    preconnectIfNeeded(params, document);
     329
     330    if (params.relAttribute.isLinkPrefetch) {
     331        prefetchIfNeeded(params, document);
     332        return;
     333    }
    329334
    330335    if (m_client.shouldLoadLink()) {
     
    335340            m_preloadResourceClient = WTFMove(resourceClient);
    336341    }
    337 
    338     prefetchIfNeeded(params, document);
    339 
    340     return true;
    341 }
    342 
    343 }
     342}
     343
     344}
  • trunk/Source/WebCore/loader/LinkLoader.h

    r246786 r247481  
    6161    virtual ~LinkLoader();
    6262
    63     bool loadLink(const LinkLoadParameters&, Document&);
     63    void loadLink(const LinkLoadParameters&, Document&);
    6464    static Optional<CachedResource::Type> resourceTypeFromAsAttribute(const String& as);
    6565
Note: See TracChangeset for help on using the changeset viewer.