[webkit-changes] [WebKit/WebKit] b57dc1: Regression(252852 at main) Games on kongregate.com ar...
Chris Dumez
noreply at github.com
Tue Feb 21 07:33:28 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b57dc1f8ff99678c9b9012ba6f89c444ad72de2f
https://github.com/WebKit/WebKit/commit/b57dc1f8ff99678c9b9012ba6f89c444ad72de2f
Author: Chris Dumez <cdumez at apple.com>
Date: 2023-02-21 (Tue, 21 Feb 2023)
Changed paths:
A LayoutTests/fast/frames/about-blank-frame-no-lazy-loading-expected.txt
A LayoutTests/fast/frames/about-blank-frame-no-lazy-loading.html
M Source/WebCore/html/HTMLFrameElementBase.cpp
M Source/WebCore/html/HTMLIFrameElement.cpp
Log Message:
-----------
Regression(252852 at main) Games on kongregate.com are no longer loading
https://bugs.webkit.org/show_bug.cgi?id=252636
rdar://104392542
Reviewed by Ryosuke Niwa.
Do not lazy load iframes that have no valid URL or "about:blank" as URL. Lazily
loading such iframes has no performance benefits and can actually cause breakage
as JS (like on kongregate.com) may expect them to load synchronously.
Note that we have a more general problem where we fail to create the Frame &
initial empty document when we decide to lazy load an iframe. This is not correct,
and we should only delay the navigation to the frame URL *after* the creation of
the initial empty document. However, fixing this is a larger change and this is
not a regression from 252852 at main. As a result, I am merely adding a FIXME comment
in this patch and will address separately.
* LayoutTests/fast/frames/about-blank-frame-no-lazy-loading-expected.txt: Added.
* LayoutTests/fast/frames/about-blank-frame-no-lazy-loading.html: Added.
Add layout test coverage.
* Source/WebCore/html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::openURL):
* Source/WebCore/html/HTMLIFrameElement.cpp:
(WebCore::isFrameLazyLoadable):
(WebCore::HTMLIFrameElement::shouldLoadFrameLazily):
Canonical link: https://commits.webkit.org/260612@main
More information about the webkit-changes
mailing list