Timeline
Jul 22, 2021:
- 8:20 PM Changeset in webkit [280217] by
-
- 2 edits in trunk/Source/WebKit
[Live Text] [iOS] Analysis should also search for any App Clip codes
https://bugs.webkit.org/show_bug.cgi?id=228207
Reviewed by Wenson Hsieh.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView imageAnalysisGestureDidBegin:]):
(-[WKContentView imageAnalysisGestureDidTimeOut:]):
- 8:17 PM Changeset in webkit [280216] by
-
- 2 edits in trunk/JSTests
JSTests/stress/test-out-of-memory shouldn't assume that we always OOM
https://bugs.webkit.org/show_bug.cgi?id=228213
Reviewed by Mark Lam.
- stress/test-out-of-memory.js:
- 8:17 PM Changeset in webkit [280215] by
-
- 2 edits in trunk/JSTests
Reduce iteration of microbenchmarks/memcpy-typed-loop.js
https://bugs.webkit.org/show_bug.cgi?id=228214
Reviewed by Saam Barati.
Observing frequent timeout (e.g. https://ews-build.webkit.org/#/builders/1/builds/44698).
We do not need to have such a large # of iterations.
- microbenchmarks/memcpy-typed-loop.js:
- 7:14 PM Changeset in webkit [280214] by
-
- 3 edits in trunk/Source/WebKit
[iOS] Unable to open arxiv links on Chrome
https://bugs.webkit.org/show_bug.cgi?id=228205
rdar://78225849
Reviewed by Tim Horton.
-[WKWebView _snapshotRect:intoImageOfWidth:completionHandler:] currently
expects the width to be specified in pixels. However, the PDFKit SPI
used to snapshot a PDF expects a width in points. This led to WebKit
requesting extremely large snapshots, resulting in a crash in PDFKit.
To fix, use points instead of pixels in the PDF snapshotting path.
Also, ensure the scale factor of the returned image matches the
the scale used by PDFKit (the screen scale), as opposed to WebKit's
own "page" device scale factor, which can be overridden.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView takeSnapshotWithConfiguration:completionHandler:]):
- UIProcess/API/ios/WKWebViewIOS.mm:
- 7:00 PM Changeset in webkit [280213] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, reverting 280130.
https://bugs.webkit.org/show_bug.cgi?id=228212
Introduced MotionMark regression
Reverted changeset:
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::simplifiedLayout):
- 7:00 PM Changeset in webkit [280212] by
-
- 3 edits in trunk/LayoutTests
Batch add test expectations for Monterey on Open Source
https://bugs.webkit.org/show_bug.cgi?id=228200
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 5:09 PM Changeset in webkit [280211] by
-
- 2 edits in trunk/Source/WebCore
The network process fails to take a locked file assertion when executing a SQLiteStatement outside a transaction
https://bugs.webkit.org/show_bug.cgi?id=228194
Reviewed by Geoffrey Garen.
The network process fails to take a locked file assertion when executing a SQLiteStatement outside a transaction.
This means we may suspend in the middle of that statement and crash due to holding locked files.
To address this, we now make sure to bump the transaction count during the sqlite3_step() call if we're not
in the middle of a transaction and the current statement is not read-only (e.g. SELECT). Note that SQLite will
implicitly create a transaction for us in such cases.
- platform/sql/SQLiteStatement.cpp:
(WebCore::SQLiteStatement::step):
- 5:08 PM Changeset in webkit [280210] by
-
- 3 edits in trunk/LayoutTests
Batch add test expectations for Monterey on Open Source
https://bugs.webkit.org/show_bug.cgi?id=228200
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- platform/mac/TestExpectations: Adjusting expectations for Monterey.
- 5:08 PM Changeset in webkit [280209] by
-
- 11 edits2 moves1 add in branches/safari-612.1.25-branch/Source
Cherry-pick r280205. rdar://problem/80991517
REGRESSION (r278877) [Cocoa] WebAuthn stopped working for non-Safari browsers
https://bugs.webkit.org/show_bug.cgi?id=228116
<rdar://problem/80693607>
Reviewed by Per Arne Vollan.
Source/WebKit:
We should not be using the PAC key to confirm a valid WebContent process is the source of
WebAuthn-related messages. Instead, we should confirm the message source is an Apple-signed
executable, and that the signining identity is for the WebContent process.
- Shared/Cocoa/CodeSigning.h: Renamed from Source/WebKit/Shared/mac/CodeSigning.h.
- Shared/Cocoa/CodeSigning.mm: Renamed from Source/WebKit/Shared/mac/CodeSigning.mm. (WebKit::codeSigningIdentifier): (WebKit::codeSigningIdentifierForCurrentProcess): (WebKit::codeSigningIdentifierAndPlatformBinaryStatus): Added.
- Shared/Cocoa/XPCEndpoint.mm: (WebKit::XPCEndpoint::XPCEndpoint): Update to use new method.
- SourcesCocoa.txt:
- UIProcess/Cocoa/WebProcessProxyCocoa.mm: (WebKit::WebProcessProxy::messageSourceIsValidWebContentProcess):
- UIProcess/WebProcessProxy.cpp: (WebKit:WebProcessProxy::getWebAuthnProcessConnection): Update for new message check name.
- UIProcess/WebProcessProxy.h:
- WebKit.xcodeproj/project.pbxproj:
Source/WTF:
Add new SPI header for code signing features.
- WTF.xcodeproj/project.pbxproj:
- wtf/spi/cocoa/SecuritySPI.h: Move some SecTask calls out of PLATFORM(MAC).
- wtf/spi/darwin/CodeSignSPI.h: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:46 PM Changeset in webkit [280208] by
-
- 2 edits in trunk/LayoutTests
[BigSur+ Wk2] imported/w3c/web-platform-t ests/media-source/mediasour ce-seek-during-pending-seek .html is a flakey failure
https://bugs.webkit.org/show_bug.cgi?id=222183
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations: Including BigSur+ on existing expectations.
- 4:37 PM Changeset in webkit [280207] by
-
- 3 edits in trunk/LayoutTests
[ BigSur+ iOS Release wk2 ] 2 imported/w3c/web-platform-tests/webrtc are flakey text failures (223385)
https://bugs.webkit.org/show_bug.cgi?id=223385
Unreviewed test gardening.
- platform/ios/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 4:02 PM Changeset in webkit [280206] by
-
- 2 edits in trunk/LayoutTests
[iOS] media/video-presentation-mode.html is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=228204
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 3:58 PM Changeset in webkit [280205] by
-
- 11 edits2 moves1 add in trunk/Source
REGRESSION (r278877) [Cocoa] WebAuthn stopped working for non-Safari browsers
https://bugs.webkit.org/show_bug.cgi?id=228116
<rdar://problem/80693607>
Reviewed by Per Arne Vollan.
Source/WebKit:
We should not be using the PAC key to confirm a valid WebContent process is the source of
WebAuthn-related messages. Instead, we should confirm the message source is an Apple-signed
executable, and that the signining identity is for the WebContent process.
- Shared/Cocoa/CodeSigning.h: Renamed from Source/WebKit/Shared/mac/CodeSigning.h.
- Shared/Cocoa/CodeSigning.mm: Renamed from Source/WebKit/Shared/mac/CodeSigning.mm.
(WebKit::codeSigningIdentifier):
(WebKit::codeSigningIdentifierForCurrentProcess):
(WebKit::codeSigningIdentifierAndPlatformBinaryStatus): Added.
- Shared/Cocoa/XPCEndpoint.mm:
(WebKit::XPCEndpoint::XPCEndpoint): Update to use new method.
- SourcesCocoa.txt:
- UIProcess/Cocoa/WebProcessProxyCocoa.mm:
(WebKit::WebProcessProxy::messageSourceIsValidWebContentProcess):
- UIProcess/WebProcessProxy.cpp:
(WebKit:WebProcessProxy::getWebAuthnProcessConnection): Update for new message check name.
- UIProcess/WebProcessProxy.h:
- WebKit.xcodeproj/project.pbxproj:
Source/WTF:
Add new SPI header for code signing features.
- WTF.xcodeproj/project.pbxproj:
- wtf/spi/cocoa/SecuritySPI.h: Move some SecTask calls out of PLATFORM(MAC).
- wtf/spi/darwin/CodeSignSPI.h: Added.
- 3:52 PM Changeset in webkit [280204] by
-
- 4 edits in trunk/LayoutTests
Batch add test expectations for Monterey on Open Source
https://bugs.webkit.org/show_bug.cgi?id=228200
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 3:48 PM Changeset in webkit [280203] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION (r277873, r280105): [macOS] Correct two sandbox typos (228201)
https://bugs.webkit.org/show_bug.cgi?id=228201
<rdar://problem/80983916>
Reviewed by Per Arne Vollan.
Correct two typos in the macOS Sandbox (WebContent process).
- WebProcess/com.apple.WebProcess.sb.in:
- 3:45 PM Changeset in webkit [280202] by
-
- 2 edits in trunk/Source/WebKit
Revert part of r279089 that was done a little bit too early.
<rdar://80663503> and https://bugs.webkit.org/show_bug.cgi?id=228174
Reviewed by Chris Dumez.
- Configurations/WebKit.xcconfig:
- 3:40 PM Changeset in webkit [280201] by
-
- 3 edits2 adds in trunk
[Cocoa] ".SF Arabic" should not be able to be looked up by name (because it is dot-prefixed)
https://bugs.webkit.org/show_bug.cgi?id=228018
<rdar://problem/80691654>
Reviewed by Simon Fraser.
Source/WebCore:
Dot-prefixed font names are not supported. The supported way of using SF Arabic is to use
system-ui with Arabic text. It will fall back to SF Arabic.
Test: fast/text/sf-arabic-lookup-by-name.html
- platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::platformFontLookupWithFamily): Special case this font name, similar to how
we have other special cases for other dot-prefixed fonts. Ideally we would change this
check to just if the leading character is a dot, but that change would be too scary at
this point in the release cycle.
LayoutTests:
- fast/text/sf-arabic-lookup-by-name-expected.html: Added.
- fast/text/sf-arabic-lookup-by-name.html: Added.
- 3:11 PM Changeset in webkit [280200] by
-
- 2 edits in trunk/LayoutTests
[BigSur Debug] imported/w3c/web-platform-tests/xhr/event-upload-progress-crossorigin.any.worker.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=222385.
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 3:07 PM Changeset in webkit [280199] by
-
- 9 edits1 move in trunk/Source/WebCore
Rename AtomicHTMLToken to AtomHTMLToken
https://bugs.webkit.org/show_bug.cgi?id=228196
Reviewed by Geoffrey Garen.
We should rename AtomicHTMLToken to AtomHTMLToken as we did for AtomString (AtomicString => AtomString).
- WebCore.xcodeproj/project.pbxproj:
- html/parser/AtomHTMLToken.h: Renamed from Source/WebCore/html/parser/AtomicHTMLToken.h.
(WebCore::AtomHTMLToken::AtomHTMLToken):
(WebCore::AtomHTMLToken::type const):
(WebCore::AtomHTMLToken::name const):
(WebCore::AtomHTMLToken::setName):
(WebCore::AtomHTMLToken::selfClosing const):
(WebCore::AtomHTMLToken::attributes):
(WebCore::AtomHTMLToken::attributes const):
(WebCore::AtomHTMLToken::characters const):
(WebCore::AtomHTMLToken::charactersLength const):
(WebCore::AtomHTMLToken::charactersIsAll8BitData const):
(WebCore::AtomHTMLToken::comment const):
(WebCore::AtomHTMLToken::forceQuirks const):
(WebCore::AtomHTMLToken::publicIdentifier const):
(WebCore::AtomHTMLToken::systemIdentifier const):
(WebCore::AtomHTMLToken::initializeAttributes):
- html/parser/HTMLConstructionSite.cpp:
(WebCore::setAttributes):
(WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
(WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
(WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
(WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody):
(WebCore::HTMLConstructionSite::insertDoctype):
(WebCore::HTMLConstructionSite::insertComment):
(WebCore::HTMLConstructionSite::insertCommentOnDocument):
(WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
(WebCore::HTMLConstructionSite::insertHTMLHeadElement):
(WebCore::HTMLConstructionSite::insertHTMLBodyElement):
(WebCore::HTMLConstructionSite::insertHTMLFormElement):
(WebCore::HTMLConstructionSite::insertHTMLElement):
(WebCore::HTMLConstructionSite::insertHTMLElementOrFindCustomElementInterface):
(WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
(WebCore::HTMLConstructionSite::insertFormattingElement):
(WebCore::HTMLConstructionSite::insertScriptElement):
(WebCore::HTMLConstructionSite::insertForeignElement):
(WebCore::HTMLConstructionSite::createElement):
(WebCore::HTMLConstructionSite::createHTMLElementOrFindCustomElementInterface):
(WebCore::HTMLConstructionSite::createHTMLElement):
(WebCore::HTMLConstructionSite::createElementFromSavedToken):
- html/parser/HTMLConstructionSite.h:
- html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::constructTreeFromHTMLToken):
- html/parser/HTMLStackItem.h:
(WebCore::HTMLStackItem::HTMLStackItem):
(WebCore::HTMLStackItem::create):
- html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::ExternalCharacterTokenBuffer):
(WebCore::HTMLTreeBuilder::constructTree):
(WebCore::HTMLTreeBuilder::processToken):
(WebCore::HTMLTreeBuilder::processDoctypeToken):
(WebCore::HTMLTreeBuilder::processFakeStartTag):
(WebCore::HTMLTreeBuilder::processFakeEndTag):
(WebCore::HTMLTreeBuilder::processFakePEndTagIfPInButtonScope):
(WebCore::shouldClose):
(WebCore::adjustSVGTagNameCase):
(WebCore::adjustAttributes):
(WebCore::adjustSVGAttributes):
(WebCore::adjustMathMLAttributes):
(WebCore::adjustForeignAttributes):
(WebCore::HTMLTreeBuilder::processStartTagForInBody):
(WebCore::HTMLTreeBuilder::insertGenericHTMLElement):
(WebCore::HTMLTreeBuilder::processTemplateStartTag):
(WebCore::HTMLTreeBuilder::processTemplateEndTag):
(WebCore::HTMLTreeBuilder::processEndOfFileForInTemplateContents):
(WebCore::HTMLTreeBuilder::processStartTagForInTable):
(WebCore::HTMLTreeBuilder::processStartTag):
(WebCore::HTMLTreeBuilder::processHtmlStartTagForInBody):
(WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
(WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
(WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
(WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
(WebCore::HTMLTreeBuilder::processEndTagForInRow):
(WebCore::HTMLTreeBuilder::processEndTagForInCell):
(WebCore::HTMLTreeBuilder::processEndTagForInBody):
(WebCore::HTMLTreeBuilder::processEndTagForInTable):
(WebCore::HTMLTreeBuilder::processEndTag):
(WebCore::HTMLTreeBuilder::processComment):
(WebCore::HTMLTreeBuilder::processCharacter):
(WebCore::HTMLTreeBuilder::insertPhoneNumberLink):
(WebCore::HTMLTreeBuilder::processEndOfFile):
(WebCore::HTMLTreeBuilder::defaultForBeforeHTML):
(WebCore::HTMLTreeBuilder::defaultForBeforeHead):
(WebCore::HTMLTreeBuilder::defaultForInHead):
(WebCore::HTMLTreeBuilder::defaultForInHeadNoscript):
(WebCore::HTMLTreeBuilder::defaultForAfterHead):
(WebCore::HTMLTreeBuilder::processStartTagForInHead):
(WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
(WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
(WebCore::HTMLTreeBuilder::processScriptStartTag):
(WebCore::HTMLTreeBuilder::shouldProcessTokenInForeignContent):
(WebCore::hasAttribute):
(WebCore::HTMLTreeBuilder::processTokenInForeignContent):
(WebCore::HTMLTreeBuilder::parseError):
- html/parser/HTMLTreeBuilder.h:
- html/parser/TextDocumentParser.cpp:
(WebCore::TextDocumentParser::insertFakePreElement):
- 2:37 PM Changeset in webkit [280198] by
-
- 11 edits1 add in trunk
AirStackSlot's uint16_t byte size is too small
https://bugs.webkit.org/show_bug.cgi?id=228193
<rdar://80888059>
Reviewed by Mark Lam.
JSTests:
- stress/stack-slot-needs-to-use-more-than-uint16.js: Added.
Source/JavaScriptCore:
- b3/B3Procedure.cpp:
(JSC::B3::Procedure::addStackSlot):
- b3/B3Procedure.h:
- b3/air/AirCode.cpp:
(JSC::B3::Air::Code::addStackSlot):
- b3/air/AirCode.h:
- b3/air/AirStackSlot.cpp:
(JSC::B3::Air::StackSlot::StackSlot):
- b3/air/AirStackSlot.h:
(JSC::B3::Air::StackSlot::ensureSize):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::lower):
- ftl/FTLOutput.cpp:
(JSC::FTL::Output::lockedStackSlot):
- ftl/FTLOutput.h:
- 2:30 PM Changeset in webkit [280197] by
-
- 2 edits in trunk/LayoutTests
[BigSur wk2 arm64] imported/w3c/web-platform-tests/html/cross-origin-opener-policy/header-parsing.https.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=228197.
Unreviewwed test gardening.
- platform/mac-wk2/TestExpectations:
- 1:59 PM Changeset in webkit [280196] by
-
- 43 edits68 copies4 moves141 adds1 delete in trunk
Migrate Monterey expectations to OpenSource and bump version numbers
https://bugs.webkit.org/show_bug.cgi?id=228090
Reviewed by Ryan Haddad.
Tools:
- Scripts/webkitpy/port/mac.py:
(MacPort):
- Scripts/webkitpy/port/mac_unittest.py:
(MacTest.test_monterey_baseline_search_path):
(MacTest.test_big_sur_baseline_search_path): Deleted.
LayoutTests:
- TestExpectations:
- media/media-source/content/test-vp8-malformed-header-manifest.json: Renamed from LayoutTests/platform/mac-bigsur/media/media-source/content/test-vp8-malformed-header-manifest.json.
- media/media-source/content/test-vp8-malformed-header.webm: Renamed from LayoutTests/platform/mac-bigsur/media/media-source/content/test-vp8-malformed-header.webm.
- media/media-source/media-source-webm-vp8-malformed-header-expected.txt: Renamed from LayoutTests/platform/mac-bigsur/media/media-source/media-source-webm-vp8-malformed-header-expected.txt.
- media/media-source/media-source-webm-vp8-malformed-header.html: Renamed from LayoutTests/platform/mac-bigsur/media/media-source/media-source-webm-vp8-malformed-header.html.
- media/media-webm-no-duration-expected.txt: Renamed from LayoutTests/platform/mac-bigsur/media/media-webm-no-duration-expected.txt.
- media/media-webm-no-duration.html: Renamed from LayoutTests/platform/mac-bigsur/media/media-webm-no-duration.html.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/anchor-element-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/anchor-element-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attrib-string-colors-with-color-filter-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attrib-string-colors-with-color-filter-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attribute-string-for-copy-with-color-filter-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attribute-string-for-copy-with-color-filter-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-1-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-1-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-2-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-2-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-3-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-3-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-4-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-4-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-5-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-5-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-1-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-1-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-2-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-2-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-for-typing-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-for-typing-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/attributed-string-for-typing-with-color-filter-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-for-typing-with-color-filter-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/basic-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/basic-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/comment-cdata-section-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/comment-cdata-section-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/font-size-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/font-size-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/font-style-variant-effect-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/font-style-variant-effect-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/font-weight-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/font-weight-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/letter-spacing-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/letter-spacing-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/text-decorations-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/text-decorations-expected.txt.
- platform/mac-bigsur-wk1/editing/mac/attributed-string/vertical-align-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/vertical-align-expected.txt.
- platform/mac-bigsur-wk1/fast/scrolling/latching/iframe-latch-small-deltas-expected.txt: Copied from LayoutTests/platform/mac-wk1/fast/scrolling/latching/iframe-latch-small-deltas-expected.txt.
- platform/mac-bigsur-wk2/fast/events/contextmenu-lookup-action-for-image-expected.txt: Added.
- platform/mac-bigsur-wk2/http/tests/security/mixedContent/websocket/insecure-websocket-in-iframe-expected.txt: Added.
- platform/mac-bigsur-wk2/http/tests/security/mixedContent/websocket/insecure-websocket-in-main-frame-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/media-source/mediasource-invalid-codec-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/service-workers/service-worker/websocket-in-service-worker.https-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/service-workers/service-worker/websocket.https-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/Send-65K-data.any-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/Send-binary-65K-arraybuffer.any-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/Send-binary-arraybuffer.any-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/Send-data.any-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/Send-paired-surrogates.any-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/basic-auth.any-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/basic-auth.any.worker-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-arraybuffer-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-blob-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-getting-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-large-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-unicode-expected.txt: Added.
- platform/mac-bigsur-wk2/imported/w3c/web-platform-tests/websockets/remove-own-iframe-during-onerror.window-expected.txt: Added.
- platform/mac-bigsur/fast/forms/button-sizes-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/button-sizes-expected.txt.
- platform/mac-bigsur/fast/forms/input-appearance-spinbutton-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/input-appearance-spinbutton-expected.txt.
- platform/mac-bigsur/fast/forms/number/number-appearance-spinbutton-disabled-readonly-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/number/number-appearance-spinbutton-disabled-readonly-expected.txt.
- platform/mac-bigsur/fast/forms/select/optgroup-rendering-expected.txt: Copied from LayoutTests/platform/mac/fast/forms/select/optgroup-rendering-expected.txt.
- platform/mac-bigsur/fast/text/basic/014-expected.txt: Copied from LayoutTests/platform/mac/fast/text/basic/014-expected.txt.
- platform/mac-bigsur/fast/text/capitalize-boundaries-expected.txt: Copied from LayoutTests/platform/mac/fast/text/capitalize-boundaries-expected.txt.
- platform/mac-bigsur/fast/text/hyphenate-avoid-orphaned-word-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-avoid-orphaned-word-expected.txt.
- platform/mac-bigsur/fast/text/hyphenate-character-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-character-expected.txt.
- platform/mac-bigsur/fast/text/hyphenate-first-word-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-first-word-expected.txt.
- platform/mac-bigsur/fast/text/hyphenate-limit-before-after-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-limit-before-after-expected.txt.
- platform/mac-bigsur/fast/text/hyphenate-limit-lines-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-limit-lines-expected.txt.
- platform/mac-bigsur/fast/text/hyphenate-locale-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-locale-expected.txt.
- platform/mac-bigsur/fast/text/hyphens-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphens-expected.txt.
- platform/mac-bigsur/fast/text/midword-break-after-breakable-char-expected.txt: Copied from LayoutTests/platform/mac/fast/text/midword-break-after-breakable-char-expected.txt.
- platform/mac-bigsur/inspector/css/get-system-fonts-expected.txt: Added.
- platform/mac-bigsur/media/media-source/mediasource-addsourcebuffer-expected.txt: Added.
- platform/mac-bigsur/media/media-source/mediasource-invalid-codec-expected.txt: Added.
- platform/mac-bigsur/platform/mac/fast/loader/file-url-mimetypes-3-expected.txt: Added.
- platform/mac-bigsur/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Added.
- platform/mac-catalina-wk1/editing/mac/attributed-string/anchor-element-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/anchor-element-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attrib-string-colors-with-color-filter-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attrib-string-colors-with-color-filter-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attribute-string-for-copy-with-color-filter-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attribute-string-for-copy-with-color-filter-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-1-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-1-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-2-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-2-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-3-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-3-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-4-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-4-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-5-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-5-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-1-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-1-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-2-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-2-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-for-typing-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-for-typing-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/attributed-string-for-typing-with-color-filter-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/attributed-string-for-typing-with-color-filter-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/basic-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/basic-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/comment-cdata-section-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/comment-cdata-section-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/font-size-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/font-size-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/font-style-variant-effect-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/font-style-variant-effect-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/font-weight-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/font-weight-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/letter-spacing-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/letter-spacing-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/text-decorations-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/text-decorations-expected.txt.
- platform/mac-catalina-wk1/editing/mac/attributed-string/vertical-align-expected.txt: Copied from LayoutTests/platform/mac-wk1/editing/mac/attributed-string/vertical-align-expected.txt.
- platform/mac-catalina-wk1/fast/scrolling/latching/iframe-latch-small-deltas-expected.txt: Copied from LayoutTests/platform/mac-wk1/fast/scrolling/latching/iframe-latch-small-deltas-expected.txt.
- platform/mac-catalina-wk2/fast/events/contextmenu-lookup-action-for-image-expected.txt: Added.
- platform/mac-catalina-wk2/http/tests/security/mixedContent/websocket/insecure-websocket-in-iframe-expected.txt: Added.
- platform/mac-catalina-wk2/http/tests/security/mixedContent/websocket/insecure-websocket-in-main-frame-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/media-source/mediasource-invalid-codec-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/service-workers/service-worker/websocket-in-service-worker.https-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/service-workers/service-worker/websocket.https-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/Send-65K-data.any-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/Send-binary-65K-arraybuffer.any-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/Send-binary-arraybuffer.any-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/Send-data.any-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/Send-paired-surrogates.any-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/basic-auth.any-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/basic-auth.any.worker-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-arraybuffer-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-blob-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-getting-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-large-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-unicode-expected.txt: Added.
- platform/mac-catalina-wk2/imported/w3c/web-platform-tests/websockets/remove-own-iframe-during-onerror.window-expected.txt: Added.
- platform/mac-catalina/fast/text/basic/014-expected.txt: Copied from LayoutTests/platform/mac/fast/text/basic/014-expected.txt.
- platform/mac-catalina/fast/text/capitalize-boundaries-expected.txt: Copied from LayoutTests/platform/mac/fast/text/capitalize-boundaries-expected.txt.
- platform/mac-catalina/fast/text/hyphenate-avoid-orphaned-word-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-avoid-orphaned-word-expected.txt.
- platform/mac-catalina/fast/text/hyphenate-character-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-character-expected.txt.
- platform/mac-catalina/fast/text/hyphenate-first-word-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-first-word-expected.txt.
- platform/mac-catalina/fast/text/hyphenate-limit-before-after-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-limit-before-after-expected.txt.
- platform/mac-catalina/fast/text/hyphenate-limit-lines-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-limit-lines-expected.txt.
- platform/mac-catalina/fast/text/hyphenate-locale-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphenate-locale-expected.txt.
- platform/mac-catalina/fast/text/hyphens-expected.txt: Copied from LayoutTests/platform/mac/fast/text/hyphens-expected.txt.
- platform/mac-catalina/fast/text/midword-break-after-breakable-char-expected.txt: Copied from LayoutTests/platform/mac/fast/text/midword-break-after-breakable-char-expected.txt.
- platform/mac-catalina/imported/w3c/web-platform-tests/media-source/mediasource-addsourcebuffer-expected.txt: Added.
- platform/mac-catalina/imported/w3c/web-platform-tests/media-source/mediasource-invalid-codec-expected.txt: Added.
- platform/mac-catalina/inspector/css/get-system-fonts-expected.txt: Added.
- platform/mac-catalina/platform/mac/fast/loader/file-url-mimetypes-3-expected.txt: Added.
- platform/mac-catalina/platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment-expected.txt: Added.
- platform/mac-wk1/TestExpectations:
- platform/mac-wk1/editing/mac/attributed-string/anchor-element-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attrib-string-colors-with-color-filter-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attribute-string-for-copy-with-color-filter-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-1-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-2-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-3-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-4-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-5-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-1-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-across-shadow-boundaries-with-style-2-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-for-typing-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/attributed-string-for-typing-with-color-filter-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/basic-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/comment-cdata-section-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/font-size-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/font-style-variant-effect-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/font-weight-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/letter-spacing-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/text-decorations-expected.txt:
- platform/mac-wk1/editing/mac/attributed-string/vertical-align-expected.txt:
- platform/mac-wk1/fast/scrolling/latching/iframe-latch-small-deltas-expected.txt:
- platform/mac-wk2/TestExpectations:
- platform/mac-wk2/fast/events/contextmenu-lookup-action-for-image-expected.txt: Added.
- platform/mac-wk2/http/tests/security/mixedContent/websocket/insecure-websocket-in-iframe-expected.txt: Added.
- platform/mac-wk2/http/tests/security/mixedContent/websocket/insecure-websocket-in-main-frame-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/media-source/mediasource-invalid-codec-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/service-workers/service-worker/websocket-in-service-worker.https-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/service-workers/service-worker/websocket.https-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/Send-65K-data.any-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/Send-binary-65K-arraybuffer.any-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/Send-binary-arraybuffer.any-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/Send-data.any-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/Send-paired-surrogates.any-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/basic-auth.any-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/basic-auth.any.worker-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-arraybuffer-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-blob-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-getting-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-large-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/interfaces/WebSocket/bufferedAmount/bufferedAmount-unicode-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/websockets/remove-own-iframe-during-onerror.window-expected.txt: Added.
- platform/mac/TestExpectations:
- platform/mac/fast/forms/button-sizes-expected.txt:
- platform/mac/fast/forms/input-appearance-spinbutton-expected.txt:
- platform/mac/fast/forms/number/number-appearance-spinbutton-disabled-readonly-expected.txt:
- platform/mac/fast/forms/select/optgroup-rendering-expected.txt:
- platform/mac/fast/text/basic/014-expected.txt:
- platform/mac/fast/text/capitalize-boundaries-expected.txt:
- platform/mac/fast/text/hyphenate-avoid-orphaned-word-expected.txt:
- platform/mac/fast/text/hyphenate-character-expected.txt:
- platform/mac/fast/text/hyphenate-first-word-expected.txt:
- platform/mac/fast/text/hyphenate-limit-before-after-expected.txt:
- platform/mac/fast/text/hyphenate-limit-lines-expected.txt:
- platform/mac/fast/text/hyphenate-locale-expected.txt:
- platform/mac/fast/text/hyphens-expected.txt:
- platform/mac/fast/text/midword-break-after-breakable-char-expected.txt:
- platform/mac/inspector/css/get-system-fonts-expected.txt: Added.
- platform/mac/media/media-source/media-source-webm-vp8-malformed-header-expected.png: Added.
- platform/mac/platform/mac/fast/loader/file-url-mimetypes-3-expected.txt: Added.
- 1:05 PM Changeset in webkit [280195] by
-
- 9 edits in trunk/Source
Fix uses of Dependency::fence with respect to the compiler outsmarting us
https://bugs.webkit.org/show_bug.cgi?id=227757
<rdar://problem/80280931>
Reviewed by Robin Morisset.
Source/JavaScriptCore:
We were running into issues on arm64 with respect to the memory model
ordering of loads, and how the compiler optimized code around Dependency::fence.
The issue manifested as calls to isMarked incorrectly returning true.
To see the issue, let's consider a program like this:
a = load(p1)
b = load(p2)
if (a != b) return;
d = Dependency::fence(b)
At the point of defining the dependency, the compiler has proven
a == b. So, instead of building the dependency on the register used
for b, we end up using the register for a. So the actual compiled
code ends up with a dependency on load(p1), not load(p2).
To fix this, we end up adding a new API, Dependency::loadEndFence(pointer,
result), which is defined as:
template<typename T>
static Dependency loadAndFence(T* pointer, T& output)
{
T value = *opaque(pointer);
Dependency dependency = Dependency::fence(value);
output = opaque(value);
return dependency;
}
The reason for this is that it split "b" in the above program into two values,
and the "b" the program compares against is not known to the compiler to be
the same value that we build a dependency on.
- heap/MarkedBlock.h:
(JSC::MarkedBlock::aboutToMark):
(JSC::MarkedBlock::isMarked):
- runtime/JSObject.cpp:
(JSC::JSObject::visitButterflyImpl):
- runtime/JSObject.h:
(JSC::JSObject::fencedButterfly):
- runtime/SparseArrayValueMap.cpp:
(JSC::SparseArrayEntry::getConcurrently):
(JSC::SparseArrayEntry::getConcurrently const): Deleted.
- runtime/SparseArrayValueMap.h:
- runtime/Structure.h:
(JSC::Structure::fencedIndexingMode):
- runtime/StructureIDBlob.h:
(JSC::StructureIDBlob::fencedIndexingModeIncludingHistory):
Source/WTF:
- wtf/Atomics.h:
(WTF::opaque):
(WTF::Dependency::loadAndFence):
- 1:04 PM Changeset in webkit [280194] by
-
- 2 edits in trunk/Source/WTF
Unreviewed, follow-up after r280193
https://bugs.webkit.org/show_bug.cgi?id=228142
I accidentally reverted auto change when switching branches.
- wtf/text/AtomStringImpl.cpp:
(WTF::UCharBufferTranslator::equal):
(WTF::LCharBufferTranslator::equal):
(WTF::BufferFromStaticDataTranslator::equal):
- 12:18 PM Changeset in webkit [280193] by
-
- 17 edits in trunk
Micro-optimize innerHTML
https://bugs.webkit.org/show_bug.cgi?id=228142
Reviewed by Simon Fraser.
Source/WebCore:
No behavior change.
This patch does some micro optimizations revealed by the profiler when running some of Speedometer2 tests which intensively use innerHTML.
This offers improvement in jQuery-TodoMVC and Vanilla-ES2015-Babel-Webpack-TodoMVC since both are super innerHTML heavy benchmarks.
| subtest | ms | ms | b / a | pValue (significance using False Discovery Rate) |
| Elm-TodoMVC |126.862500 |126.687500 |0.998621 | 0.673462 |
| VueJS-TodoMVC |27.775000 |27.645833 |0.995350 | 0.741588 |
| EmberJS-TodoMVC |129.350000 |129.129167 |0.998293 | 0.624196 |
| BackboneJS-TodoMVC |51.129167 |51.204167 |1.001467 | 0.716622 |
| Preact-TodoMVC |21.870833 |21.337500 |0.975614 | 0.217771 |
| AngularJS-TodoMVC |139.854167 |140.266667 |1.002950 | 0.489838 |
| Vanilla-ES2015-TodoMVC |69.229167 |68.895833 |0.995185 | 0.238772 |
| Inferno-TodoMVC |68.391667 |68.266667 |0.998172 | 0.762281 |
| Flight-TodoMVC |77.979167 |78.166667 |1.002404 | 0.710324 |
| Angular2-TypeScript-TodoMVC |39.741667 |39.966667 |1.005662 | 0.524123 |
| VanillaJS-TodoMVC |55.416667 |55.512500 |1.001729 | 0.781447 |
| jQuery-TodoMVC |268.812500 |266.966667 |0.993133 | 0.003384 (significant) |
| EmberJS-Debug-TodoMVC |345.383333 |345.662500 |1.000808 | 0.695259 |
| React-TodoMVC |90.679167 |90.179167 |0.994486 | 0.067477 |
| React-Redux-TodoMVC |152.691667 |152.687500 |0.999973 | 0.991207 |
| Vanilla-ES2015-Babel-Webpack-TodoMVC |66.487500 |65.729167 |0.988594 | 0.000118 (significant) |
a mean = 242.12319
b mean = 242.80485
pValue = 0.1992654128
(Bigger means are better.)
1.003 times better
Results ARE NOT significant
- html/parser/HTMLConstructionSite.cpp:
(WebCore::HTMLConstructionSite::insertTextNode):
- html/parser/HTMLConstructionSite.h:
- html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::pumpTokenizerLoop): We do not need to call
shrinkToBestFitin fragment parsing case since
we will discard HTMLToken soon.
- html/parser/HTMLMetaCharsetParser.cpp:
(WebCore::HTMLMetaCharsetParser::checkForMetaCharset):
- html/parser/HTMLPreloadScanner.cpp:
(WebCore::HTMLPreloadScanner::scan):
- html/parser/HTMLToken.h:
(WebCore::HTMLToken::clear): We found that these
clearcalls cause performance problem according to the Instruments: we
repeatedly use this Vector, and we repeatedly allocate and deallocate this Vector unnecessarily. We useresize(0)instead
to avoid this allocation and deallocation.
(WebCore::HTMLToken::shrinkToBestFit): But HTMLToken is kept so long, so at some point, we would like to make backing storage
small. So, we add shrinkToBestFit and we call it only after finishing batching of HTMLToken processing.
(WebCore::HTMLToken::beginStartTag):
(WebCore::HTMLToken::beginEndTag):
- html/parser/HTMLTokenizer.h:
(WebCore::HTMLTokenizer::shrinkToBestFit):
- html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::characterPredicate):
(WebCore::HTMLTreeBuilder::insertPhoneNumberLink):
(WebCore::HTMLTreeBuilder::linkifyPhoneNumbers):
(WebCore::HTMLTreeBuilder::processCharacterBuffer):
(WebCore::HTMLTreeBuilder::processCharacterBufferForInBody):
(WebCore::HTMLTreeBuilder::defaultForInTableText):
(WebCore::HTMLTreeBuilder::processTokenInForeignContent):
(WebCore::HTMLTreeBuilder::processFakeCharacters): Deleted. It is dead code before this patch.
- html/parser/HTMLTreeBuilder.h:
Source/WTF:
- wtf/Vector.h:
(WTF::Malloc>::shrinkToBestFit): This shrinks the backing storage to "appropriate for the living Vector".
- wtf/text/AtomStringImpl.cpp:
(WTF::UCharBufferTranslator::equal): WTF::equal for String does not check hash. This is because computing hash is expensive
and we would like to avoid that if it is not necessary. But when inserting string into AtomStringTable, we can use hash value
since they must be already computed because of HashMap's requirement. So let's use it before calling WTF::equal.
(WTF::LCharBufferTranslator::equal):
(WTF::BufferFromStaticDataTranslator::equal):
- wtf/text/StringView.h:
(WTF::StringView::stripLeadingMatchedCharacters): Add this and use it in HTMLTreeBuilder.
Tools:
- TestWebKitAPI/Tests/WTF/StringView.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):
- 12:13 PM Changeset in webkit [280192] by
-
- 2 edits in trunk/LayoutTests
REGRESSION: [iOS] ASSERTION FAILED: !m_messageReceiverMapCount under WebKit::RemoteAudioHardwareListener::~RemoteAudioHardwareListener().
https://bugs.webkit.org/show_bug.cgi?id=228038
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 12:12 PM Changeset in webkit [280191] by
-
- 3 edits in trunk/Source/JavaScriptCore
useProfiler option should automatically disable concurrent JIT
https://bugs.webkit.org/show_bug.cgi?id=228152
Reviewed by Saam Barati.
The bytecode profiler is not thread safe so we should have
recomputeDependentOptions() disable concurrent JIT. Also, fix the
jsc CLI to set the useProfiler option rather than have its own
state. Note, we call Options::setOption() rather than setting the
Options::useProfiler() option directly as setOption calls
recomputeDependentOptions() for us.
- jsc.cpp:
(CommandLine::parseArguments):
(runJSC):
- runtime/Options.cpp:
(JSC::Options::recomputeDependentOptions):
(JSC::Options::ensureOptionsAreCoherent):
- 12:00 PM Changeset in webkit [280190] by
-
- 3 edits in trunk/Source/WebCore
Rename EventHandler::m_textRecognitionHoverTimerFired()
https://bugs.webkit.org/show_bug.cgi?id=228183
rdar://78933684
Reviewed by Tim Horton.
When upstreaming support for Live Text in WebKit, I accidentally renamed the method
imageExtractionTimerFired()tom_textRecognitionHoverTimerFired().
- page/EventHandler.cpp:
(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::textRecognitionHoverTimerFired):
(WebCore::EventHandler::m_textRecognitionHoverTimerFired): Deleted.
- page/EventHandler.h:
- 11:26 AM Changeset in webkit [280189] by
-
- 2 edits in trunk/LayoutTests
[Mac wk2] http/tests/media/hls/hls-webvtt-seek-backwards.html is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=228189.
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 11:18 AM Changeset in webkit [280188] by
-
- 1 copy in tags/Safari-612.1.24.11.1
Tag Safari-612.1.24.11.1.
- 11:10 AM Changeset in webkit [280187] by
-
- 7 edits in branches/safari-612.1.24.11-branch/Source/JavaScriptCore
Cherry-pick r280066. rdar://problem/80851562
[JSC] StructureStubInfo's m_identifier should follow to the same protocol of inlineAccessBaseStructure
https://bugs.webkit.org/show_bug.cgi?id=228092
Reviewed by Saam Barati.
In r279813, we fixed a race condition related to inlineAccessBaseStructure: while we clear inlineAccessBaseStructure,
we still run code relying on this field's value until stub version of the code is generated. As a result,
we run the code which relies on the cells that are already collected. And we have the same problem with
m_identifier field too. This patch makes m_identifier follow to the same protocol of inlineAccessBaseStructure
so that we fix this race issue too: both fields will be alive until we switch to the code that are not relying on these
fields.
We also make inlineAccessBaseStructure to m_inlineAccessBaseStructure to easily find that this is member field.
And we also use setWithoutWriteBarrier for m_inlineAccessBaseStructure since we emit codeBlock->vm().heap.writeBarrier(codeBlock)
immediately after that.
- bytecode/AccessCase.cpp: (JSC::AccessCase::fromStructureStubInfo):
- bytecode/GetByStatus.cpp: (JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/InByStatus.cpp: (JSC::InByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/PutByIdStatus.cpp: (JSC::PutByIdStatus::computeForStubInfo):
- bytecode/StructureStubInfo.cpp: (JSC::StructureStubInfo::initGetByIdSelf): (JSC::StructureStubInfo::initArrayLength): (JSC::StructureStubInfo::initStringLength): (JSC::StructureStubInfo::initPutByIdReplace): (JSC::StructureStubInfo::initInByIdSelf): (JSC::StructureStubInfo::addAccessCase): (JSC::StructureStubInfo::reset): (JSC::StructureStubInfo::visitAggregateImpl): (JSC::StructureStubInfo::visitWeakReferences): (JSC::StructureStubInfo::propagateTransitions): (JSC::StructureStubInfo::setCacheType): Deleted.
- bytecode/StructureStubInfo.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280066 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:10 AM Changeset in webkit [280186] by
-
- 7 edits1 add in branches/safari-612.1.24.11-branch
Cherry-pick r280050. rdar://problem/80851606
[JSC] InByStatus / InByVariant should visit CacheableIdentifier
https://bugs.webkit.org/show_bug.cgi?id=228088
rdar://80794604
Reviewed by Mark Lam.
JSTests:
- stress/in-by-variant-should-mark-cacheable-identifier.js: Added. (foo): (let.handler.has):
Source/JavaScriptCore:
After r278445, InByVariant holds CacheableIdentifier. And this can have
String/Symbol cells if this variant is generated by in_by_val. In that
case, we must visit this cell as GetByStatus / GetByVariant are doing.
- bytecode/InByStatus.cpp: (JSC::InByStatus::visitAggregateImpl):
- bytecode/InByStatus.h:
- bytecode/InByVariant.cpp: (JSC::InByVariant::visitAggregateImpl):
- bytecode/InByVariant.h:
- bytecode/RecordedStatuses.cpp: (JSC::RecordedStatuses::visitAggregateImpl):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280050 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:10 AM Changeset in webkit [280185] by
-
- 2 edits in branches/safari-612.1.24.11-branch/Source/WebKit
Cherry-pick r280001. rdar://problem/80788656
macOS Safari network sessions not being marked as being from a browser
https://bugs.webkit.org/show_bug.cgi?id=228028
<rdar://problem/80648664>
Reviewed by Brent Fulgham.
Move WebKitAdditions to open source to communicate full web browser
status to the networking stack. In the macOS case, we don't have
a full browser entitlement, so we should check for Safari.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::SessionWrapper::initialize): The name com.apple.WebKit.InAppBrowser is not the most accurate name, but changing it would require syncing with other parts of the network stack. We should do this in a separate bug.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280001 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:06 AM Changeset in webkit [280184] by
-
- 8 edits in branches/safari-612.1.24.11-branch/Source
Versioning.
WebKit-7612.1.24.11.1
- 11:04 AM Changeset in webkit [280183] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION (r279992): Crashes under RemoteLayerBackingStore::applyBackingStoreToLayer() in macCatalyst
https://bugs.webkit.org/show_bug.cgi?id=228181
rdar://80923581
Reviewed by Dan Bates.
- Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::applyBackingStoreToLayer):
r279992 reorganized this code to determine the contents object and then
set it on the layer, instead of setting it directly; this means that the
lifetime of the contents object must be extended.
Interestingly, the common case (the CAMachPort case), as well as the
case I was actually adding in r279992 both were safe, because of the use
of autorelease. (macCatalyst uses IOSurface as layer contents directly,
without CAMachPort, so uses the one path that r279992 broke).
It is unnecessary to use autorelease; instead just store the contents
object in a RetainPtr until it is set.
- 10:53 AM Changeset in webkit [280182] by
-
- 1 copy in branches/safari-612.1.24.11-branch
New branch.
- 10:44 AM Changeset in webkit [280181] by
-
- 10 edits in trunk
XHR.send(Document) should replace mismatched surrogates with replacement character before sending
https://bugs.webkit.org/show_bug.cgi?id=228170
Patch by Alex Christensen <achristensen@webkit.org> on 2021-07-22
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/xhr/send-entity-body-document-bogus-expected.txt:
Source/WebCore:
This matches the behavior of Chrome and Firefox.
Covered by a newly passing WPT test.
- bindings/js/JSDOMConvertStrings.cpp:
(WebCore::identifierToUSVString):
(WebCore::valueToUSVString):
(WebCore::stringToUSVString): Deleted.
- bindings/js/JSDOMConvertStrings.h:
- css/parser/CSSTokenizer.cpp:
(WebCore::preprocessString):
- xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::send):
Source/WTF:
- wtf/text/WTFString.cpp:
(WTF::replaceUnpairedSurrogatesWithReplacementCharacter):
- wtf/text/WTFString.h:
Move from WebCore, rename as suggested, update spec link to one that works.
- 10:28 AM Changeset in webkit [280180] by
-
- 2 edits in trunk/Tools
[ BigSur Debug ] TestWebKitAPI.GPUProcess.CrashWhilePlayingAudioViaCreateMediaElementSource is flaky, hitting ASSERTION FAILED: !isInRoutingArbitrationForToken(token)
https://bugs.webkit.org/show_bug.cgi?id=227728
Unreviewed API test gardening.
- TestWebKitAPI/Tests/WebKitCocoa/GPUProcess.mm:
(TEST):
- 10:18 AM Changeset in webkit [280179] by
-
- 3 edits in trunk/Source/WebCore
Compilation error with gcc version 9.3.0 (Buildroot 2020.08-14-ge5a2a90)
https://bugs.webkit.org/show_bug.cgi?id=228184
Reviewed by Chris Dumez.
Turn destructors into virtual ones for RTCRtpReceiver and RTCRtpSender.
It seems that gcc doesn't create a virtual table for these classes, while clang does. That
would the cause, when compiling clang, ImplementationLacksVTable is not needed in the IDL
file. The approach for this fix to force the virtual table creation by turning destructors
into virtual.
No new tests needed.
- Modules/mediastream/RTCRtpReceiver.h:
- Modules/mediastream/RTCRtpSender.h:
- 10:07 AM Changeset in webkit [280178] by
-
- 11 edits in trunk/Source
Avoid Quick Note overlay when scrolling to show a highlight
https://bugs.webkit.org/show_bug.cgi?id=228172
Reviewed by Wenson Hsieh and Tim Horton.
When scrolling to show the selected highlight after clicking on one in the QuickNote overlay,
make sure to avoid the Quick Note overlay, so that the user can actually see the highlight.
This required calculating more information about the selection rect for iOS, and also piping through
information to have the selection rect be the entire rect, rather that just the caret and the end of selection.
Source/WebCore:
- Modules/highlight/AppHighlightStorage.cpp:
(WebCore::AppHighlightStorage::attemptToRestoreHighlightAndScroll):
- editing/Editor.cpp:
(WebCore::TemporarySelectionChange::setSelection):
- editing/Editor.h:
- editing/FrameSelection.cpp:
(WebCore::FrameSelection::setSelection):
(WebCore::FrameSelection::updateAndRevealSelection):
(WebCore::FrameSelection::selectionBounds const):
- editing/FrameSelection.h:
Source/WebKit:
- Platform/spi/Cocoa/SynapseSPI.h:
- UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView adjustScrollRect:]):
(-[WKWebView _scrollToRect:origin:minimumScrollDistance:]):
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::appHighlightsNoteOverlayRect):
- UIProcess/WebPageProxy.h:
- 9:56 AM Changeset in webkit [280177] by
-
- 1 copy in branches/safari-612.1.25-branch
New branch.
- 9:49 AM Changeset in webkit [280176] by
-
- 17 edits3 deletes in trunk
[macOS Debug] Layout Test imported/w3c/web-platform-tests/IndexedDB/open-request-queue.html is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=172044
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/IndexedDB/open-request-queue-expected.txt:
Source/WebCore:
We used to start handling delete request when there is still open request in flight. We should start a request
after previous requests are done, to match spec (https://www.w3.org/TR/IndexedDB/#delete-a-database) and other
browsers' behavior.
Updated and rebaselined existing tests.
- Modules/indexeddb/server/UniqueIDBDatabase.cpp:
(WebCore::IDBServer::UniqueIDBDatabase::handleDatabaseOperations):
(WebCore::IDBServer::UniqueIDBDatabase::startVersionChangeTransaction):
LayoutTests:
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt:
- storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-private-expected.txt:
- storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt:
- storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-private-expected.txt:
- storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt:
- storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-private-expected.txt:
- storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-workers-expected.txt:
- storage/indexeddb/intversion-long-queue-expected.txt:
- storage/indexeddb/intversion-long-queue-private-expected.txt:
- storage/indexeddb/modern/deletedatabase-2-private.html: Removed. This test checks if a delete request is
started when there are ongoing open requests. We are removing this behavior to match spec so we don't need to
keep the test.
- storage/indexeddb/modern/deletedatabase-2.html: Removed. Ditto.
- storage/indexeddb/modern/resources/deletedatabase-2.js: Removed. Ditto.
- storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js:
(versionChangeCallback):
(deleteBlockedCallback):
- storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js:
(initiallyDeleted):
- storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js:
(onOpenSuccess):
- 9:37 AM Changeset in webkit [280175] by
-
- 3 edits2 adds in trunk
REGRESSION(r269745) Google Developers maps does not fully load
https://bugs.webkit.org/show_bug.cgi?id=228182
<rdar://79787819>
Reviewed by Antti Koivisto.
Source/WebCore:
IFC integration does not support cases when the inline level element stretches as the containing block size changes.
This should include both percent and calc width/height values.
Test: fast/inline/incorrect-sizing-with-calc.html
- layout/integration/LayoutIntegrationCoverage.cpp:
(WebCore::LayoutIntegration::canUseForChild):
LayoutTests:
- fast/inline/incorrect-sizing-with-calc-expected.html: Added.
- fast/inline/incorrect-sizing-with-calc.html: Added.
- 9:27 AM Changeset in webkit [280174] by
-
- 9 edits in trunk
nullptr crash in ApplyStyleCommand::applyRelativeFontStyleChange
https://bugs.webkit.org/show_bug.cgi?id=223974
Patch by Frédéric Wang <fwang@igalia.com> on 2021-07-22
Reviewed by Darin Adler.
Source/WebCore:
WebCore::documentOrder does not handle well elements like <summary> that contains a
shadow substree. This is causing assertion failures in debug build when setting start/end
selection and nullptr crashes in release build when trying to browse selection between these
start and end nodes. This patch fixes that issue by switching to shadow including tree order
for these particular cases. It introduces a generic treeOrder<TreeType>(a, b) function that
can be used for TreeType = ShadowIncludingTree as well as by WebCore::documentOrder.
- dom/Node.cpp: Explicitly instantiate commonInclusiveAncestor<ShadowIncludingTree> so that it can be used
by WebCore::treeOrder.
- dom/Position.cpp: Explicitly instantiate templates.
(WebCore::treeOrder): Convert documentOrder to a template parametrized by TreeType.
(WebCore::documentOrder): Implement it with treeOrder<ComposedTree>.
- dom/Position.h: Delcare new template.
- editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::updateStartEnd): Use treeOrder<ShadowIncludingTree>.
(WebCore::ApplyStyleCommand::removeInlineStyle): Ditto.
- editing/VisiblePosition.cpp:
(WebCore::documentOrder): Use treeOrder<ShadowIncludingTree>.
- editing/VisibleSelection.cpp:
(WebCore::VisibleSelection::setBaseAndExtentToDeepEquivalents): Use treeOrder<ShadowIncludingTree>.
(WebCore::VisibleSelection::setWithoutValidation): Ditto.
Tools:
- TestWebKitAPI/Tests/WebCore/DocumentOrder.cpp: Update FIXME.
- 4:48 AM Changeset in webkit [280173] by
-
- 3 edits in trunk/Source/WTF
Add CPU(RISCV64)
https://bugs.webkit.org/show_bug.cgi?id=228178
Patch by Zan Dobersek <zdobersek@igalia.com> on 2021-07-22
Reviewed by Adrian Perez de Castro.
Detect when compiling for the RISC-V 64-bit architecture and define
the WTF_CPU_RISCV64 macro under that condition, enabling use of
CPU(RISCV64) build guards.
- wtf/PageBlock.h: Use 4 kB as the page size ceiling for CPU(RISCV64).
- wtf/PlatformCPU.h:
- 3:54 AM Changeset in webkit [280172] by
-
- 16 edits in trunk
[GLib] Expose API to access/modify capture devices states
https://bugs.webkit.org/show_bug.cgi?id=227902
Reviewed by Carlos Garcia Campos.
Source/WebKit:
Introduce new GLib API (and corresponding GObject properties):
webkit_web_view_get_camera_capture_state
webkit_web_view_get_microphone_capture_state
webkit_web_view_set_camera_capture_state
webkit_web_view_set_microphone_capture_state
webkit_web_view_get_display_capture_state
webkit_web_view_set_display_capture_state
webkit_user_media_permission_is_for_display_device
This can be useful in Web browsers willing to indicate the status of the capture devices
currently in use by the WebView.
Covered by API tests.
- UIProcess/API/glib/WebKitUIClient.cpp:
- UIProcess/API/glib/WebKitUserMediaPermissionRequest.cpp:
(webkit_user_media_permission_is_for_display_device):
- UIProcess/API/glib/WebKitWebView.cpp:
(webkitWebViewMediaCaptureStateDidChange):
(webkitWebViewSetProperty):
(webkitWebViewGetProperty):
(webkit_web_view_class_init):
(webkitWebViewConfigureMediaCapture):
(webkit_web_view_get_camera_capture_state):
(webkit_web_view_set_camera_capture_state):
(webkit_web_view_get_microphone_capture_state):
(webkit_web_view_set_microphone_capture_state):
(webkit_web_view_get_display_capture_state):
(webkit_web_view_set_display_capture_state):
- UIProcess/API/glib/WebKitWebViewPrivate.h:
- UIProcess/API/gtk/WebKitUserMediaPermissionRequest.h:
- UIProcess/API/gtk/WebKitWebView.h:
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
- UIProcess/API/wpe/WebKitUserMediaPermissionRequest.h:
- UIProcess/API/wpe/WebKitWebView.h:
- UIProcess/API/wpe/docs/wpe-1.0-sections.txt:
Tools:
The GTK MiniBrowser is now able to show media capture indicators, through the URI entry. A
new API test was added, checking support for getDisplayMedia().
- MiniBrowser/gtk/BrowserTab.c:
(decidePermissionRequest):
- MiniBrowser/gtk/BrowserWindow.c:
(webViewMediaCaptureStateChanged):
(webViewUriEntryIconPressed):
(browserWindowSwitchTab):
- TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewUserMediaPermissionRequests):
(testWebViewAudioOnlyUserMediaPermissionRequests):
(testWebViewDisplayUserMediaPermissionRequests):
(beforeAll):
- TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
(displayCaptureChanged):
(WebViewTest::waitUntilDisplayCaptureStateChangedTo):
(microphoneCaptureChanged):
(WebViewTest::waitUntilMicrophoneCaptureStateChangedTo):
(cameraCaptureChanged):
(WebViewTest::waitUntilCameraCaptureStateChangedTo):
- TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
- flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox):
- 2:00 AM Changeset in webkit [280171] by
-
- 15 edits in trunk/Source
[css-scroll-snap] Pass the full target point when selecting a snap offset
https://bugs.webkit.org/show_bug.cgi?id=228023
Reviewed by Frédéric Wang.
Source/WebCore:
Pass the full proposed destination scroll offset when calling closestSnapOffset. For
now, only the component in the scroll direction is used, but eventually the other
component will be used to avoid snapping to snap areas that are entirely off the screen.
No new tests. This change is simply a refactor in preparation for a behavior
change and shouldn't change behavior itself.
- page/scrolling/ScrollSnapOffsetsInfo.cpp:
(WebCore::closestSnapOffsetWithInfoAndAxis):
(WebCore::LayoutScrollSnapOffsetsInfo::closestSnapOffset const):
(WebCore::FloatScrollSnapOffsetsInfo::closestSnapOffset const):
- page/scrolling/ScrollSnapOffsetsInfo.h:
- page/scrolling/nicosia/ScrollingTreeScrollingNodeDelegateNicosia.cpp:
(WebCore::ScrollingTreeScrollingNodeDelegateNicosia::handleWheelEvent):
- platform/ScrollAnimator.cpp:
(WebCore::ScrollAnimator::scroll):
(WebCore::ScrollAnimator::adjustScrollOffsetForSnappingIfNeeded):
- platform/ScrollAnimator.h:
- platform/ScrollController.cpp:
(WebCore::ScrollController::setNearestScrollSnapIndexForAxisAndOffset):
(WebCore::ScrollController::adjustScrollDestination):
(WebCore::ScrollController::updateActiveScrollSnapIndexForClientOffset):
(WebCore::ScrollController::resnapAfterLayout):
- platform/ScrollController.h:
- platform/ScrollSnapAnimatorState.cpp:
(WebCore::ScrollSnapAnimatorState::setupAnimationForState):
(WebCore::ScrollSnapAnimatorState::targetOffsetForStartOffset const):
- platform/ScrollSnapAnimatorState.h:
- platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::doPostThumbMoveSnapping):
Source/WebKit:
- UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h:
- UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm:
(WebKit::RemoteScrollingCoordinatorProxy::adjustTargetContentOffsetForSnapping):
(WebKit::RemoteScrollingCoordinatorProxy::closestSnapOffsetForMainFrameScrolling const):
- UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:
(-[WKScrollingNodeScrollViewDelegate scrollViewWillEndDragging:withVelocity:targetContentOffset:]):
Jul 21, 2021:
- 8:19 PM Changeset in webkit [280170] by
-
- 3 edits in trunk/LayoutTests
Update LayoutTests/TestExpectations for imported w3c IndexedDB tests
https://bugs.webkit.org/show_bug.cgi?id=228169
Reviewed by Chris Dumez.
Update LayoutTests/TestExpectations based on latest test results as we have fixed some existing issues, and we
no longer expect these tests to fail.
- TestExpectations:
- platform/wpe/TestExpectations:
- 5:23 PM Changeset in webkit [280169] by
-
- 2 edits in trunk/LayoutTests
[iOS Debug] media/media-usage-state-private-browsing.html is crashing.
https://bugs.webkit.org/show_bug.cgi?id=228171
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 5:06 PM Changeset in webkit [280168] by
-
- 1 copy in tags/Safari-612.1.24.1.4
Tag Safari-612.1.24.1.4.
- 5:05 PM Changeset in webkit [280167] by
-
- 1 copy in tags/Safari-612.1.24.0.4
Tag Safari-612.1.24.0.4.
- 4:18 PM Changeset in webkit [280166] by
-
- 2 edits in trunk/Tools
MiniBrowser xcconfig should include ccache.xcconfig conditionally
https://bugs.webkit.org/show_bug.cgi?id=228126
Reviewed by Tim Horton.
- MiniBrowser/Configurations/DebugRelease.xcconfig:
- 4:06 PM Changeset in webkit [280165] by
-
- 3 edits in trunk/LayoutTests
REGRESSION(r279971): [ Mac , iOS ] imported/w3c/web-platform-tests/webmessaging/broadcastchannel/blobs.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=228168.
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 3:43 PM Changeset in webkit [280164] by
-
- 2 edits in trunk/LayoutTests
[iOS Debug] media/media-fragments/TC0003.html is flaky crashing.
https://bugs.webkit.org/show_bug.cgi?id=228167
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 3:24 PM Changeset in webkit [280163] by
-
- 2 edits in trunk/Source/JavaScriptCore
Fix type check error in testb3
https://bugs.webkit.org/show_bug.cgi?id=228166
Reviewed by Saam Barati.
- b3/testb3_2.cpp:
(testXorNotWithLeftShift32):
(testXorNotWithRightShift32):
(testXorNotWithUnsignedRightShift32):
- 2:43 PM Changeset in webkit [280162] by
-
- 2 edits in trunk/LayoutTests
[iOS Debug] http/tests/resourceLoadStatistics/website-data-removal-for-site-with-user-interaction.html is a flaky crash.
https://bugs.webkit.org/show_bug.cgi?id=228164
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 2:16 PM Changeset in webkit [280161] by
-
- 2 edits in trunk/LayoutTests
[iOS] http/wpt/webrtc/transfer-datachannel-service-worker.https.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=228165
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 1:59 PM Changeset in webkit [280160] by
-
- 6 edits in trunk/Source/WebKit
RunningBoard kills the network process if it is still holding the "holding locked file" assertion upon suspension
https://bugs.webkit.org/show_bug.cgi?id=228148
Reviewed by Sihui Liu.
RunningBoard kills the network process if it is still holding the "holding locked file" assertion upon suspension
because our assertion type is "uninterruptible" and we don't release it when it gets invalidated. To address the
issue, we now use an "interruptible" assertion instead when holding locked files.
- NetworkProcess/ios/NetworkProcessIOS.mm:
(WebKit::NetworkProcess::setIsHoldingLockedFiles):
- UIProcess/ProcessAssertion.h:
- UIProcess/ProcessThrottler.cpp:
(WebKit::ProcessThrottler::assertionName const):
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didSetAssertionType):
- UIProcess/ios/ProcessAssertionIOS.mm:
(WebKit::runningBoardNameForAssertionType):
(WebKit::runningBoardDomainForAssertionType):
- 1:33 PM Changeset in webkit [280159] by
-
- 3 edits in trunk/LayoutTests
[GTK][WPE] Update test expectations after r279987 and r280077.
Unreviewed test gardening.
- platform/glib/TestExpectations:
- platform/gtk/TestExpectations:
- 1:31 PM Changeset in webkit [280158] by
-
- 4 edits in trunk/Source
Add linkedOnOrAfter check for r269162
https://bugs.webkit.org/show_bug.cgi?id=228154
Source/WebCore:
<rdar://78575888>
Patch by Alex Christensen <achristensen@webkit.org> on 2021-07-21
Reviewed by Geoffrey Garen.
That revision broke some programs, but only on macOS.
On iOS, we needed SecKeyProxy and WKNavigationDelegate to get client certificates to send.
Add a linkedOnOrAfter check until they update to use WKNavigationDelegate instead of default keychain behavior.
- platform/cocoa/VersionChecks.h:
Source/WebKit:
Patch by Alex Christensen <achristensen@webkit.org> on 2021-07-21
Reviewed by Geoffrey Garen.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::configurationForSessionID):
- 1:29 PM Changeset in webkit [280157] by
-
- 3 edits in trunk/Source/WebKit
REGRESSION (r278916): Hitting ASSERT(!m_db.m_transactionInProgress) in SQLiteTransaction::begin()
https://bugs.webkit.org/show_bug.cgi?id=228151
<rdar://80231894>
Reviewed by Geoffrey Garen.
Because it is hard to keep track of whether or not a transaction has already been started in
ResourceLoadStatisticsDatabaseStore code and because passing a transaction as parameter adds
a lot of function overloads, I decided to switch to another approach. I added a
beginTransactionIfNecessary() member function that begins a transaction if there isn't one
already going on. This way, we can safely ask to begin a transaction within the scope of
a function (if we're about to do several write statements), without having to worry about
whether or not our caller already started a transaction.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
(WebKit::ResourceLoadStatisticsDatabaseStore::ResourceLoadStatisticsDatabaseStore):
(WebKit::ResourceLoadStatisticsDatabaseStore::migrateDataToNewTablesIfNecessary):
(WebKit::ResourceLoadStatisticsDatabaseStore::addMissingColumnsToTable):
(WebKit::ResourceLoadStatisticsDatabaseStore::addMissingTablesIfNecessary):
(WebKit::ResourceLoadStatisticsDatabaseStore::ensureAndMakeDomainList):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertDomainRelationshipList):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertDomainRelationships):
(WebKit::ResourceLoadStatisticsDatabaseStore::populateFromMemoryStore):
(WebKit::ResourceLoadStatisticsDatabaseStore::merge):
(WebKit::ResourceLoadStatisticsDatabaseStore::mergeStatistic):
(WebKit::ResourceLoadStatisticsDatabaseStore::mergeStatistics):
(WebKit::ResourceLoadStatisticsDatabaseStore::reclassifyResources):
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::requestStorageAccessUnderOpener):
(WebKit::ResourceLoadStatisticsDatabaseStore::grantStorageAccess):
(WebKit::ResourceLoadStatisticsDatabaseStore::grantStorageAccessInternal):
(WebKit::ResourceLoadStatisticsDatabaseStore::grandfatherDataForDomains):
(WebKit::ResourceLoadStatisticsDatabaseStore::ensurePrevalentResourcesForDebugMode):
(WebKit::ResourceLoadStatisticsDatabaseStore::logFrameNavigation):
(WebKit::ResourceLoadStatisticsDatabaseStore::logCrossSiteLoadWithLinkDecoration):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearTopFrameUniqueRedirectsToSinceSameSiteStrictEnforcement):
(WebKit::ResourceLoadStatisticsDatabaseStore::logUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::hasHadUserInteraction):
(WebKit::ResourceLoadStatisticsDatabaseStore::setPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::setGrandfathered):
(WebKit::ResourceLoadStatisticsDatabaseStore::setIsScheduledForAllButCookieDataRemoval):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubframeUnderTopFrameDomain):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUnderTopFrameDomain):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUniqueRedirectTo):
(WebKit::ResourceLoadStatisticsDatabaseStore::setSubresourceUniqueRedirectFrom):
(WebKit::ResourceLoadStatisticsDatabaseStore::setTopFrameUniqueRedirectTo):
(WebKit::ResourceLoadStatisticsDatabaseStore::setTopFrameUniqueRedirectFrom):
(WebKit::ResourceLoadStatisticsDatabaseStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor):
(WebKit::ResourceLoadStatisticsDatabaseStore::setLastSeen):
(WebKit::ResourceLoadStatisticsDatabaseStore::setVeryPrevalentResource):
(WebKit::ResourceLoadStatisticsDatabaseStore::includeTodayAsOperatingDateIfNecessary):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertExpiredStatisticForTesting):
(WebKit::ResourceLoadStatisticsDatabaseStore::insertPrivateClickMeasurement):
(WebKit::ResourceLoadStatisticsDatabaseStore::clearPrivateClickMeasurement):
(WebKit::ResourceLoadStatisticsDatabaseStore::markAttributedPrivateClickMeasurementsAsExpiredForTesting):
(WebKit::ResourceLoadStatisticsDatabaseStore::beginTransactionIfNecessary):
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.h:
- 1:27 PM Changeset in webkit [280156] by
-
- 2 edits in trunk/LayoutTests
[ Win EWS ] Multiple fast layout-tests are slowing down results
https://bugs.webkit.org/show_bug.cgi?id=228162
Unreviewed Windows test gardening to speed up EWS.
- platform/win/TestExpectations:
- 1:10 PM Changeset in webkit [280155] by
-
- 27 edits4 adds in trunk
[GTK][WPE] Allow the user to configure the MemoryPressureHandler inside the web process
https://bugs.webkit.org/show_bug.cgi?id=222738
Reviewed by Carlos Garcia Campos.
Source/WebCore:
MemoryPressureHandler::currentMemoryUsagePolicy() is now an instance method and not a class one,
so update the call in RenderLayerCompositor to use the singleton instance.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateCompositingPolicy):
Source/WebKit:
Add a new API type WebKitMemoryPressureSettings that can be used to configure the behavior
of the MemoryPressureHandler. Add a property to WebKitWebContext that can be used to pass
new settings to it, and store them inside its API::ProcessPoolConfiguration. Those settings
will be set to new web processes during the platform initialization stage.
- PlatformGTK.cmake:
- PlatformWPE.cmake:
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- SourcesGTK.txt:
- SourcesWPE.txt:
- UIProcess/API/APIProcessPoolConfiguration.cpp:
(API::ProcessPoolConfiguration::copy):
- UIProcess/API/APIProcessPoolConfiguration.h:
- UIProcess/API/glib/WebKitMemoryPressureSettings.cpp: Added.
(webkit_memory_pressure_settings_new):
(webkit_memory_pressure_settings_copy):
(webkit_memory_pressure_settings_free):
(webkit_memory_pressure_settings_set_memory_limit):
(webkit_memory_pressure_settings_get_memory_limit):
(webkit_memory_pressure_settings_set_conservative_threshold):
(webkit_memory_pressure_settings_get_conservative_threshold):
(webkit_memory_pressure_settings_set_strict_threshold):
(webkit_memory_pressure_settings_get_strict_threshold):
(webkit_memory_pressure_settings_set_kill_threshold):
(webkit_memory_pressure_settings_get_kill_threshold):
(webkit_memory_pressure_settings_set_poll_interval):
(webkit_memory_pressure_settings_get_poll_interval):
(webkitMemoryPressureSettingsGetMemoryPressureHandlerConfiguration):
- UIProcess/API/glib/WebKitMemoryPressureSettingsPrivate.h: Added.
- UIProcess/API/glib/WebKitWebContext.cpp:
(webkitWebContextSetProperty):
(webkitWebContextConstructed):
(webkit_web_context_class_init):
- UIProcess/API/gtk/WebKitAutocleanups.h:
- UIProcess/API/gtk/WebKitMemoryPressureSettings.h: Added.
- UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
- UIProcess/API/gtk/webkit2.h:
- UIProcess/API/wpe/WebKitAutocleanups.h:
- UIProcess/API/wpe/WebKitMemoryPressureSettings.h: Added.
- UIProcess/API/wpe/docs/wpe-1.0-sections.txt:
- UIProcess/API/wpe/webkit.h:
- UIProcess/glib/WebProcessPoolGLib.cpp:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/glib/WebProcessGLib.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):
Source/WTF:
Add a configuration structure to MemoryPressureHandler, with the methods to encode/decode it. Also
add a method to set a configuration structure to a MemoryPressureHandler instance, and modify the
behavior so the the configuration is used when checking the memory used by the process.
- wtf/MemoryPressureHandler.cpp:
(WTF::MemoryPressureHandler::setShouldUsePeriodicMemoryMonitor):
(WTF::MemoryPressureHandler::thresholdForMemoryKill):
(WTF::MemoryPressureHandler::thresholdForPolicy):
(WTF::MemoryPressureHandler::policyForFootprint):
(WTF::MemoryPressureHandler::Configuration::Configuration):
- wtf/MemoryPressureHandler.h:
(WTF::MemoryPressureHandler::Configuration::encode const):
(WTF::MemoryPressureHandler::Configuration::decode):
(WTF::MemoryPressureHandler::setConfiguration):
Tools:
Add a test for WebKitMemoryPressureSettings API and to test WebKitWebContext with
non default WebKitMemoryPressureSettings values.
- TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
(MemoryPressureTest::setup):
(MemoryPressureTest::teardown):
(MemoryPressureTest::webProcessTerminatedCallback):
(MemoryPressureTest::waitUntilWebProcessTerminated):
(testMemoryPressureSettings):
(beforeAll):
- TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
- TestWebKitAPI/glib/WebKitGLib/TestMain.h:
(Test::Test):
- 12:48 PM Changeset in webkit [280154] by
-
- 2 edits in trunk/LayoutTests
Grouped/organized expectations for 227881.
https://bugs.webkit.org/show_bug.cgi?id=227728.
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 12:26 PM Changeset in webkit [280153] by
-
- 6 edits in trunk/Source
Unreviewed, reverting r280129.
Broke the internal Monterey build bots
Reverted changeset:
"GetIdentifierStringForPreferredVoiceInListWithLocale() is
deprecated in Monterey"
https://bugs.webkit.org/show_bug.cgi?id=228066
https://commits.webkit.org/r280129
- 11:51 AM Changeset in webkit [280152] by
-
- 2 edits in trunk/LayoutTests
Update test expectations for inspector/canvas/recording-2d-full.html and inspector/canvas/recording-2d-full.html .
https://bugs.webkit.org/show_bug.cgi?id=227881.
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 11:11 AM Changeset in webkit [280151] by
-
- 4 edits in trunk
Crash in -[WKWebView takeSnapshotWithConfiguration:completionHandler:] when taking empty snapshots
https://bugs.webkit.org/show_bug.cgi?id=228134
rdar://80146087
Reviewed by Chris Dumez.
Source/WebKit:
r279006 made it so that taking empty snapshots would no longer crash due
to division by zero, or assertions on the size of the returned image.
However, the change introduced a new crash, as a result of a deallocated
completionHandler. r279006 move-captured the completion handler. However,
since completionHandler is an Objective-C block, and WebKit is built
without ARC, the move does not retain the block. Consequently, the
method can call a deallocated completion handler.
To fix, capture the local handler variable already available in the
method, which retains the completion handler using makeBlockPtr.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView takeSnapshotWithConfiguration:completionHandler:]):
Tools:
Added a test to verify the crash no longer occurs.
- TestWebKitAPI/Tests/WebKitCocoa/WKWebViewSnapshot.mm:
(-[TestSnapshotWrapper takeSnapshotWithWebView:configuration:completionHandler:]):
(TEST):
- 11:09 AM Changeset in webkit [280150] by
-
- 2 edits in trunk/LayoutTests
Update expectations for inspector/canvas/recording-webgl-snapshots.html.
https://bugs.webkit.org/show_bug.cgi?id=227881.
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 10:48 AM Changeset in webkit [280149] by
-
- 3 edits in trunk/Source/JavaScriptCore
speculateNeitherDoubleNorStringNorHeapBigInt should only have a single JSType branch
https://bugs.webkit.org/show_bug.cgi?id=228146
Reviewed by Robin Morisset.
Since StringType and HeapBigIntType are adjacent JSTypes
we can do an integer range check rather than two separate
JSType checks.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::speculateNeitherDoubleNorHeapBigIntNorString):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
- 10:24 AM Changeset in webkit [280148] by
-
- 2 edits in trunk/LayoutTests
[ BigSur Release wk2 arm64 & iOS] http/tests/appcache/fail-on-update-2.html (layout-test) is a flaky timeout.
https://bugs.webkit.org/show_bug.cgi?id=225665
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 10:09 AM Changeset in webkit [280147] by
-
- 8 edits in branches/safari-612.1.24.1-branch/Source
Versioning.
WebKit-7612.1.24.1.4
- 10:03 AM Changeset in webkit [280146] by
-
- 8 edits in branches/safari-612.1.24.0-branch/Source/WebKit
Cherry-pick r280122. rdar://problem/80902802
[iOS] Add SPI for internal clients to consult whether or not viewport quirks should be enabled
https://bugs.webkit.org/show_bug.cgi?id=228123
rdar://80397679
Reviewed by Dan Bernstein.
Rename the SPI added in r280119 from
-_needsSiteSpecificQuirksto-_needsSiteSpecificViewportQuirks, to
clarify its intent (and importantly, to differentiate it from the existing WKPreferences SPI of the same name).
This distinction is important because this readonly property acts as a hint for WebKit clients to augment
certain viewport behaviors, whereas the readwrite WKPreferences property is a way for clients to indicate that
WebKit should opt in or out of site-specific quirks (unless overridden by Web Inspector).
- UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _needsSiteSpecificViewportQuirks]): (-[WKWebView _needsSiteSpecificQuirks]): Deleted.
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetStateAfterProcessTermination):
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::didCommitLoad):
- WebProcess/WebPage/WebPage.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280122 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:03 AM Changeset in webkit [280145] by
-
- 8 edits in branches/safari-612.1.24.0-branch/Source/WebKit
Cherry-pick r280119. rdar://problem/80902802
[iOS] Add SPI for internal clients to consult whether or not viewport quirks should be enabled
https://bugs.webkit.org/show_bug.cgi?id=228123
rdar://80397679
Reviewed by Tim Horton.
Add support for an SPI property on WKWebView that indicates whether site-specific quirks should be enabled.
For now, this flag is only updated whenever we commit a mainframe load, which is sufficient for the purposes of
Safari to determine whether or not to use quirked viewport behaviors for tab pill behavior.
If needed in the future, this property should probably:
- Support KVO, and...
- Change eagerly when the option is toggled via Web Inspector.
- UIProcess/API/Cocoa/WKWebView.mm: (-[WKWebView _needsSiteSpecificQuirks]):
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetStateAfterProcessTermination):
Maintain a corresponding flag on the WebPageProxy in the UI process, which starts out as
trueand is reset
if the web process terminates.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- WebProcess/WebPage/WebPage.cpp:
Add plumbing to propagate changes in the boolean flag to the UI process.
(WebKit::WebPage::didCommitLoad):
Update the flag on WebPage.
- WebProcess/WebPage/WebPage.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@280119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 10:01 AM Changeset in webkit [280144] by
-
- 8 edits in branches/safari-612.1.24.0-branch/Source
Versioning.
WebKit-7612.1.24.0.4
- 9:49 AM Changeset in webkit [280143] by
-
- 2 edits in trunk/LayoutTests
Revert "Added test expectations to ios-wk2."
This reverts commit 280142.
- 9:37 AM Changeset in webkit [280142] by
-
- 2 edits in trunk/LayoutTests
Added test expectations to ios-wk2.
Unreviewed test gardening.
- 9:16 AM Changeset in webkit [280141] by
-
- 6 edits in trunk/LayoutTests
[AspectRatio] Fix select-element-001.html
https://bugs.webkit.org/show_bug.cgi?id=228144
Patch by Rob Buis <rbuis@igalia.com> on 2021-07-21
Reviewed by Manuel Rego Casasnovas.
LayoutTests/imported/w3c:
Import fixed select-element-001.html based on SHA c2ddbb6.
- web-platform-tests/css/css-sizing/aspect-ratio/select-element-001-expected.html:
- web-platform-tests/css/css-sizing/aspect-ratio/select-element-001.html:
- web-platform-tests/css/css-sizing/aspect-ratio/w3c-import.log:
LayoutTests:
Now select-element-001.html passes.
- 8:32 AM Changeset in webkit [280140] by
-
- 2 edits in trunk/Source/WebKit
[GTK] Theme scrollbar css is no longer respected
https://bugs.webkit.org/show_bug.cgi?id=228145
Patch by Alexander Mikhaylenko <Alexander Mikhaylenko> on 2021-07-21
Reviewed by Michael Catanzaro.
Fix a fontName -> themeName typo.
- WebProcess/gtk/GtkSettingsManagerProxy.cpp:
(WebKit::GtkSettingsManagerProxy::applySettings):
- 8:31 AM Changeset in webkit [280139] by
-
- 9 edits in releases/WebKitGTK/webkit-2.32/Source/WebKit
Merge r280128 - REGRESSION(r267763): [SOUP] After network process crash, all cookies are lost until browser is restarted
https://bugs.webkit.org/show_bug.cgi?id=228128
Reviewed by Adrian Perez de Castro.
Cookies configuration is no longer stored to be sent again to the new network process after a crash.
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const): Encode cookieAcceptPolicy.
(WebKit::NetworkSessionCreationParameters::decode): Decode cookieAcceptPolicy.
- NetworkProcess/NetworkSessionCreationParameters.h: Add cookieAcceptPolicy.
- NetworkProcess/soup/NetworkSessionSoup.cpp:
(WebKit::NetworkSessionSoup::NetworkSessionSoup): Set cookie accept policy on NetworkStorageSession.
- UIProcess/API/glib/WebKitCookieManager.cpp:
(webkit_cookie_manager_set_persistent_storage): Use WebsiteDataStore API to cache the given values.
(webkit_cookie_manager_set_accept_policy): Ditto.
- UIProcess/WebCookieManagerProxy.h:
- UIProcess/WebsiteData/WebsiteDataStore.h:
- UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp:
(WebKit::WebsiteDataStore::platformSetNetworkParameters): Set cached cookie settings to network session parameters.
(WebKit::WebsiteDataStore::setCookiePersistentStorage): Cache the given value and notify the cookie manager.
(WebKit::WebsiteDataStore::setHTTPCookieAcceptPolicy): Ditto.
- UIProcess/soup/WebCookieManagerProxySoup.cpp:
(WebKit::WebCookieManagerProxy::getCookiePersistentStorage const): Deleted.
- 8:31 AM WebKitGTK/2.32.x edited by
- (diff)
- 8:09 AM Changeset in webkit [280138] by
-
- 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore
Merge r274403 - Cancel image loader events after first dispatch
https://bugs.webkit.org/show_bug.cgi?id=218556
Patch by Rob Buis <rbuis@igalia.com> on 2021-03-14
Reviewed by Darin Adler.
Address post review comments.
- dom/EventSender.h:
(WebCore::EventSender<T>::dispatchPendingEvents):
- 8:09 AM WebKitGTK/2.32.x edited by
- (diff)
- 8:07 AM WebKitGTK/2.32.x edited by
- (diff)
- 8:06 AM WebKitGTK/2.32.x edited by
- (diff)
- 8:01 AM WebKitGTK/2.32.x edited by
- (diff)
- 7:45 AM Changeset in webkit [280137] by
-
- 4 edits in releases/WebKitGTK/webkit-2.32/Source/WebKit
Merge r280074 - [GTK][WPE] Fix compilation when ATK is not used
https://bugs.webkit.org/show_bug.cgi?id=228077
Reviewed by Carlos Garcia Campos.
Guard ATK only inside implementations, so the code is more readable.
Also changed guard from ATK to GTK platform showEmojiPicker().
No new tests needed.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.messages.in:
- UIProcess/wpe/WebPageProxyWPE.cpp:
(WebKit::WebPageProxy::bindAccessibilityTree):
- 7:45 AM Changeset in webkit [280136] by
-
- 4 edits in releases/WebKitGTK/webkit-2.32/Source/WebKit
Merge r279983 - [GTK][WPE] PSON: accessibility doesn't work after a cross site navigation
https://bugs.webkit.org/show_bug.cgi?id=228021
Reviewed by Adrian Perez de Castro.
The provisional page is not handling the BindAccessibilityTree message and we never embed the new web process
plug into the UI process socket.
- UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::bindAccessibilityTree): Save the a11y plug ID.
(WebKit::ProvisionalPageProxy::didReceiveMessage): Handle BindAccessibilityTree message.
- UIProcess/ProvisionalPageProxy.h:
(WebKit::ProvisionalPageProxy::accessibilityPlugID): Returns the a11y plug ID.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::swapToProvisionalPage): If the provisional page has a plug ID, bind the a11y tree.
- 7:44 AM Changeset in webkit [280135] by
-
- 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore
Merge r279873 - [GStreamer] Allow runtime opt-out of GL rendering
https://bugs.webkit.org/show_bug.cgi?id=227873
Patch by Philippe Normand <pnormand@igalia.com> on 2021-07-13
Reviewed by Xabier Rodriguez-Calvar.
In some cases GL rendering is not really useful, such as on machines without GPU. In those
cases currently Mesa's llvmpipe is used, introducing CPU and RAM usage increase compared to
the non-gl rendering path. For these cases the user can set a new env var,
WEBKIT_GST_DISABLE_GL_SINK=1, allowing the player to use the Cairo sink.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::createVideoSinkGL):
- 7:44 AM Changeset in webkit [280134] by
-
- 5 edits in releases/WebKitGTK/webkit-2.32
Merge r278548 - [GTK][WPE] Signal "window-object-cleared" not emitted unless frame js context is get before
https://bugs.webkit.org/show_bug.cgi?id=221771
Reviewed by Michael Catanzaro.
Source/WebKit:
This is because when FrameLoader::dispatchDidClearWindowObjectInWorld() is called, the JSWindowProxy for the
world hasn't been created yet, so it returns early. But we want to dispatch it always for worlds created by the
API, to ensure that WebKitScriptWorld::window-object-cleared is emmitted.
- WebProcess/InjectedBundle/API/glib/WebKitWebPage.cpp: Implement globalObjectIsAvailableForFrame() to force the
creation of the JavaScript context for existing WebKitScriptWorlds.
Tools:
Update window-object-cleared test to check that the signal is emitted for the WebKitScriptWorld objects created
by the extension.
- TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
(UserMessageTest::sendMessage):
(UserMessageTest::viewUserMessageReceived):
(UserMessageTest::waitUntilViewMessagesReceived):
(UserMessageTest::waitUntilViewMessageReceived):
(testWebExtensionWindowObjectCleared):
(beforeAll):
- TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
(windowObjectCleared):
(isolatedWorldWindowObjectCleared):
(webkit_web_extension_initialize_with_user_data):
- 7:44 AM Changeset in webkit [280133] by
-
- 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore
Merge r274025 - CanvasRenderingContext2DBase::canDrawTextWithParams() needs to resolve styles before using the drawingContext
https://bugs.webkit.org/show_bug.cgi?id=221257
<rdar://problem/73878095>
Reviewed by Ryosuke Niwa.
Simply call fontProxy() (which internally resolves styles) before calling drawingContext().
Test: fast/text/canvas-synchronous-events.html
- html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::CanvasRenderingContext2DBase::canDrawTextWithParams):
- 7:44 AM Changeset in webkit [280132] by
-
- 4 edits in releases/WebKitGTK/webkit-2.32/Source/WebCore
Merge r274357 - Cancel image loader events after first dispatch
https://bugs.webkit.org/show_bug.cgi?id=218556
Patch by Rob Buis <rbuis@igalia.com> on 2021-03-12
Reviewed by Ryosuke Niwa.
Cancel image loader events after first dispatch.
Also change EventSender to use WeakPtr.
- dom/EventSender.h:
(WebCore::EventSender<T>::dispatchEventSoon):
(WebCore::EventSender<T>::dispatchPendingEvents):
- loader/ImageLoader.cpp:
(WebCore::ImageLoader::dispatchPendingErrorEvent):
- loader/ImageLoader.h:
- 7:44 AM Changeset in webkit [280131] by
-
- 2 edits in releases/WebKitGTK/webkit-2.32/Source/WebKit
Merge r275802 - Properly use CompletionHandler when USE_OPENGL_OR_ES is set to OFF
https://bugs.webkit.org/show_bug.cgi?id=224149
Patch by Charlène Wendling <julianaito@posteo.jp> on 2021-04-10
Reviewed by Fujii Hironori.
- WebProcess/WebPage/CoordinatedGraphics/LayerTreeHost.h:
(WebKit::LayerTreeHost::forceRepaintAsync):
- 7:37 AM WebKitGTK/2.32.x edited by
- (diff)
- 7:06 AM WebKitGTK/2.32.x edited by
- (diff)
- 6:40 AM Changeset in webkit [280130] by
-
- 2 edits in trunk/Source/WebCore
Missing layouts when using simplified layout with OOF positioned elements
https://bugs.webkit.org/show_bug.cgi?id=226008
Reviewed by Alan Bujtas.
There are some situations that allow us to do simplified layouts like when there is a positioned child
that needs to be laid out and neither the parent nor any other normal children needs it. In those cases
we just pick the list of positioned objects and invoke layoutPositionedObjects(). However that list
might not be properly updated since it's only done during the layout in RenderBlock::layoutBlockChildren().
This is causing that we miss layouts in cases where a renderer has the posChildNeedsLayout() bit set
(due to some style change for example) but no descendants in the positionedDescendantsMap() because
it has not been laid out yet. In those cases we simply bail out the simplified layout and proceed as in
the normal layout process.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::simplifiedLayout):
- 5:57 AM Changeset in webkit [280129] by
-
- 6 edits in trunk/Source
GetIdentifierStringForPreferredVoiceInListWithLocale() is deprecated in Monterey
<https://webkit.org/b/228066>
<rdar://problem/80577312>
Reviewed by Alexey Proskuryakov.
Source/WebCore:
- platform/mac/PlatformSpeechSynthesizerMac.mm:
(WebCore::speechSynthesisGetDefaultVoiceIdentifierForLocale):
- Switch to use CopyIdentifierStringForPreferredVoiceInListWithLocale() in Monterey.
- Change to return RetainPtr<> to handle lifetime of object returned from new function.
(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
- Change varible type to 'auto' since return type of speechSynthesisGetDefaultVoiceIdentifierForLocale() changed.
Source/WebCore/PAL:
- pal/spi/mac/SpeechSynthesisSPI.h:
(CopyIdentifierStringForPreferredVoiceInListWithLocale): Add.
- Define replacement function for GetIdentifierStringForPreferredVoiceInListWithLocale() in Monterey.
Source/WTF:
- wtf/PlatformHave.h:
- Add HAVE(SPEECHSYNTHESIS_MONTEREY_SPI).
- 4:51 AM Changeset in webkit [280128] by
-
- 9 edits in trunk/Source/WebKit
REGRESSION(r267763): [SOUP] After network process crash, all cookies are lost until browser is restarted
https://bugs.webkit.org/show_bug.cgi?id=228128
Reviewed by Adrian Perez de Castro.
Cookies configuration is no longer stored to be sent again to the new network process after a crash.
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const): Encode cookieAcceptPolicy.
(WebKit::NetworkSessionCreationParameters::decode): Decode cookieAcceptPolicy.
- NetworkProcess/NetworkSessionCreationParameters.h: Add cookieAcceptPolicy.
- NetworkProcess/soup/NetworkSessionSoup.cpp:
(WebKit::NetworkSessionSoup::NetworkSessionSoup): Set cookie accept policy on NetworkStorageSession.
- UIProcess/API/glib/WebKitCookieManager.cpp:
(webkit_cookie_manager_set_persistent_storage): Use WebsiteDataStore API to cache the given values.
(webkit_cookie_manager_set_accept_policy): Ditto.
- UIProcess/WebCookieManagerProxy.h:
- UIProcess/WebsiteData/WebsiteDataStore.h:
- UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp:
(WebKit::WebsiteDataStore::platformSetNetworkParameters): Set cached cookie settings to network session parameters.
(WebKit::WebsiteDataStore::setCookiePersistentStorage): Cache the given value and notify the cookie manager.
(WebKit::WebsiteDataStore::setHTTPCookieAcceptPolicy): Ditto.
- UIProcess/soup/WebCookieManagerProxySoup.cpp:
(WebKit::WebCookieManagerProxy::getCookiePersistentStorage const): Deleted.
- 4:35 AM Changeset in webkit [280127] by
-
- 4 edits in trunk/Websites/perf.webkit.org
Use bigint for 'commit_order' field in 'commits' table to support larger range.
https://bugs.webkit.org/show_bug.cgi?id=228133
Reviewed by Ryosuke Niwa.
'integer' in postgres has range from -2147483648 to +2147483647 which is not big enough.
Use 'bigint' to support wider range (-9223372036854775808 to 9223372036854775807).
SQL query for migration:
ALTER TABLE commits ALTER commit_order TYPE bigint;
- init-database.sql: Update 'integer' to 'bigint' for 'commit_order'.
- migrate-database.sql: Added migration SQL for this change.
- server-tests/api-report-commits-tests.js: Add a unit test.