[webkit-changes] [WebKit/WebKit] 4b9107: Provisional frames for site isolation should start...
Alex Christensen
noreply at github.com
Sat Jan 4 08:11:31 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 4b91074f3ff1343a49d2382fa395ae97d12fd677
https://github.com/WebKit/WebKit/commit/4b91074f3ff1343a49d2382fa395ae97d12fd677
Author: Alex Christensen <achristensen at apple.com>
Date: 2025-01-04 (Sat, 04 Jan 2025)
Changed paths:
M Source/WebCore/dom/Document.h
M Source/WebKit/WebProcess/WebPage/WebFrame.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm
Log Message:
-----------
Provisional frames for site isolation should start with about:blank as their URL
https://bugs.webkit.org/show_bug.cgi?id=285377
Reviewed by Charlie Wolfe.
This fixes a debug assertion I hit every time when debugging rdar://138937871.
I have WKContentRuleLists installed, and that page loads 2 iframes in the same process
after the first one loads subresources. I was hitting the assertion in
DFABytecodeInterpreter::interpret because ResourceLoadInfo.frameURL was null.
With site isolation off, the SubframeLoader initializes a document to about:blank
in functions that need a HTMLFrameOwnerElement, but with site isolation on
we make provisional frames with the HTMLFrameOwnerElement in another process.
Explicitly setting the URL to about:blank makes the frame state like it is with
site isolation off.
* Source/WebCore/dom/Document.h:
* Source/WebKit/WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::createProvisionalFrame):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm:
(TestWebKitAPI::TEST(SiteIsolation, ContentRuleListFrameURL)):
Canonical link: https://commits.webkit.org/288437@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list