Timeline
Apr 11, 2020:
- 9:32 PM Changeset in webkit [259940] by
-
- 11 edits in trunk/Source/WebKit
Follow-up: Add WARN_UNUSED_RETURN to decode methods in Source/WebKit/Platform/IPC
<https://webkit.org/b/210316>
<rdar://problem/61559305>
Changes based on feedback from Alex Christensen and Darin Adler:
- Remove WARN_UNUSED_RETURN from methods returning Optional<>.
- Place WARN_UNUSED_RETURN consistently before the return type.
- Platform/IPC/ArgumentCoder.h:
- Platform/IPC/ArgumentCoders.cpp:
- Platform/IPC/ArgumentCoders.h:
(IPC::ArgumentCoder<OptionSet<T>>::decode):
(IPC::ArgumentCoder<Optional<T>>::decode):
(IPC::ArgumentCoder<Box<T>>::decode):
(IPC::TupleDecoderImpl::decode):
(IPC::TupleDecoderImpl<Type>::decode):
(IPC::TupleDecoder::decode):
(IPC::TupleDecoder<0>::decode):
(IPC::VariantCoder::decode):
- Platform/IPC/Attachment.h:
- Platform/IPC/DataReference.h:
- Platform/IPC/Decoder.h:
- Platform/IPC/FormDataReference.h:
(IPC::FormDataReference::decode):
- Platform/IPC/ImageDataReference.h:
(IPC::ImageDataReference::decode):
- Platform/IPC/SharedBufferDataReference.h:
(IPC::SharedBufferDataReference::decode):
- Platform/IPC/StringReference.h:
- 8:13 PM Changeset in webkit [259939] by
-
- 3 edits2 adds in trunk
Infinite loop in InsertListCommand::doApply()
https://bugs.webkit.org/show_bug.cgi?id=210354
<rdar://problem/61427778>
Reviewed by Darin Adler.
Source/WebCore:
Function startOfNextParagraph may return an empty position. Added null check to exit the while loop
and stop looking for next paragraph.
Test: editing/inserting/insert-list-end-of-table.html
- editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::doApply):
LayoutTests:
Added a regression test for the crash.
- editing/inserting/insert-list-end-of-table-expected.txt: Added.
- editing/inserting/insert-list-end-of-table.html: Added.
- 5:43 PM Changeset in webkit [259938] by
-
- 9 edits in trunk
[macOS] [WK1] Touch Bar flashes when typing in Vietnamese in Mail
https://bugs.webkit.org/show_bug.cgi?id=210394
<rdar://problem/60099560>
Reviewed by Tim Horton.
Source/WebCore:
See WebKitLegacy/mac/ChangeLog for more details.
Currently, many users of TemporarySelectionChange use it to temporarily avoid propagating selection changes to
the client layer during temporary selection changes. This involves creating a TemporarySelectionChange without
a new selection, but with theIgnoreSelectionChanges
option specified, which makes us call `Editor::
setIgnoreSelectionChanges` to suppress selection change notifications.
Do a bit of cleanup in this area by introducing IgnoreSelectionChangeForScope, which wraps a
TemporarySelectionChange and makes it easier for a handful of call sites that currently use
TemporarySelectionChange to hide selection changes from the client layer to get their desired behavior.
Test: CandidateTests.DoNotHideCandidatesDuringTextReplacement
- editing/Editor.cpp:
(WebCore::Editor::respondToChangedSelection):
- editing/Editor.h:
(WebCore::TemporarySelectionChange::TemporarySelectionChange):
(WebCore::IgnoreSelectionChangeForScope::IgnoreSelectionChangeForScope):
- page/DragController.cpp:
(WebCore::DragController::performDragOperation):
(WebCore::DragController::insertDroppedImagePlaceholdersAtCaret):
Replace these:
TemporarySelectionChange ignoreSelectionChanges { frame, WTF::nullopt, TemporarySelectionOption::IgnoreSelectionChanges };
...with these instead:
IgnoreSelectionChangeForScope ignoreSelectionChanges { *frame };
Source/WebKitLegacy/mac:
In recent versions of macOS, changes to the animation of the candidate list touch bar item when it is expanded
or collapsed using -updateWithInsertionPointVisibility: mean that back-to-back calls to hide and show the
candidate list during the same runloop now result in a visible flicker, whereas it would remain still in prior
releases.
Combined with how
-[WebHTMLView insertText:]
in WebKitLegacy causes multiple selection change updates if the
argument is an attributed string with the text replacement attribute, this means that there is now a visible
flicker in the touch bar when using input methods that rely on theNSTextInputReplacementRangeAttributeName
attribute. One such input method is Simple Telex (Vietnamese), when typing causes characters in other parts of
the word to gain diacritics.
To fix this, we make two small adjustments in WebKitLegacy (see below).
- WebView/WebHTMLView.mm:
(-[WebHTMLView insertText:]):
While inserting text (which may be an NSAttibutedString or NSString), we may come across an attribute indicating
which part of the document to replace. In this case, we will select this range in the document before inserting
the given text.
This selection change is propagated to the client layer, which makes us briefly think that we have a ranged
selection, causing the flicker described above. Address this by suppressing selection change notifications while
we're selecting the range to replace, using the newIgnoreSelectionChangeForScope
RAII object (see WebCore
changes for more detail).
- WebView/WebView.mm:
(-[WebView updateTextTouchBar]):
When updating the text touch bar (which contains the candidate list item) after a selection change, we currently
handle the case where selection changes are ignored by hiding the candidate list; this doesn't seem right, since
selection changes that are ignored should simply be ignored by the client. To fix this, push the
ignoreSelectionChanges()
check into the if statement.
Tools:
Add an API test that inserts an attributed string with the text replacement attribute, and verifies that we
show the candidate list when inserting the string, and also don't temporarily hide the candidate list in the
process of doing so.
To achieve this, we swizzle out calls to -[NSCandidateListTouchBarItem updateWithInsertionPointVisibility:] to
detect when the candidate list is either hidden or made visible.
- TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h:
- TestWebKitAPI/Tests/mac/CandidateTests.mm:
Fix a leak in an adjacent test too, while I'm touching this file.
(TestWebKitAPI::updateCandidateListWithVisibility):
- 4:56 PM Changeset in webkit [259937] by
-
- 3 edits in trunk/Source/WebKit
Follow-up: Add WARN_UNUSED_RETURN to decode methods in WebCoreArgumentCoders
<https://webkit.org/b/210322>
<rdar://problem/61565148>
Changes based on feedback from Alex Christensen and Darin Adler:
- Remove WARN_UNUSED_RETURN from methods returning Optional<>.
- Place WARN_UNUSED_RETURN consistently before the return type.
- Shared/WebCoreArgumentCoders.cpp:
- Shared/WebCoreArgumentCoders.h:
- 4:49 PM Changeset in webkit [259936] by
-
- 4 edits4 adds in trunk
[Async overflow] Can't scroll overflow:scroll in sideways-scrollable RTL document
https://bugs.webkit.org/show_bug.cgi?id=210389
Reviewed by Tim Horton.
Source/WebCore:
ScrollingTree::handleWheelEvent() converts the event coordinates from view to "content"
coordinates, but we then jump into hit-testing on CALayers. In a sideways-scrollable
RTL document, the root content layer has a negative X offset which corresponds to
scrollOrigin; we need to map the point into the coordinate space of this layer
before entering layer-based hit-testing.
Tests: fast/scrolling/mac/async-scroll-overflow-rtl-zoomed.html
fast/scrolling/mac/async-scroll-overflow-rtl.html
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::handleWheelEvent):
- page/scrolling/mac/ScrollingTreeMac.mm:
(ScrollingTreeMac::scrollingNodeForPoint):
LayoutTests:
- fast/scrolling/mac/async-scroll-overflow-rtl-expected.txt: Added.
- fast/scrolling/mac/async-scroll-overflow-rtl-zoomed-expected.txt: Added.
- fast/scrolling/mac/async-scroll-overflow-rtl-zoomed.html: Added.
- fast/scrolling/mac/async-scroll-overflow-rtl.html: Added.
- 4:21 PM Changeset in webkit [259935] by
-
- 3 edits in trunk/Source/WebKit
Add text interaction delegate functions
https://bugs.webkit.org/show_bug.cgi?id=210395
<rdar://problem/61650549>
Reviewed by Wenson Hsieh.
Implement some delegate callbacks that are used to toggle selection reveal,
placeholder text, and selection assistance.
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _willBeginTextInteractionInTextInputContext:]): Added.
(-[WKContentView _didFinishTextInteractionInTextInputContext:]): Added.
- 1:17 PM Changeset in webkit [259934] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening of encrypted-media tests
https://bugs.webkit.org/show_bug.cgi?id=210391
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 12:36 PM Changeset in webkit [259933] by
-
- 22 edits in trunk/Source
Move more from live range to SimpleRange: callers of absoluteTextRects
https://bugs.webkit.org/show_bug.cgi?id=210369
Reviewed by Anders Carlsson.
Source/WebCore:
- dom/Node.cpp:
(WebCore::Node::textRects const): Deleted.
- dom/Node.h: Updated for the above.
- dom/Range.cpp:
(WebCore::Range::absoluteBoundingBox const): Updated since absoluteTextRects
no longer has a RangeInFixedPosition* argument.
(WebCore::Range::absoluteTextRects const): Removed the unused RangeInFixedPosition*
argument.
- dom/Range.h: Got rid of unused RangeInFixedPosition type and also removed
RangeInFixedPosition* argument from the absoluteTextRects function. Later will
remove absoluteTextRects entirely.
- editing/Editor.cpp:
(WebCore::Editor::firstRectForRange const): Use RenderObject::absoluteTextQuads
and unitedBoundingBoxes rather than using RenderObject::absoluteBoundingBoxRectForRange.
- editing/cocoa/DataDetection.mm:
(WebCore::DataDetection::detectContentInRange): Use SimpleRange rather than
live ranges.
- html/HTMLTextFormControlElement.cpp:
(WebCore::setContainerAndOffsetForRange): Moved from int to unsigned.
(WebCore::HTMLTextFormControlElement::selection const): Return Optional<SimpleRange>
rather than a live range.
- html/HTMLTextFormControlElement.h: Updated for the change above.
- page/TextIndicator.cpp:
(WebCore::initializeIndicator): Updated since absoluteTextRects no longer takes
a RangeInFixedPosition* argument.
- rendering/HighlightData.h: Removed stray obsolete declaration.
- rendering/RenderObject.cpp:
(WebCore::RenderObject::absoluteBoundingBoxRectForRange): Deleted. Callers can
use absoluteTextQuads directly. We need to cut down on the number of separate
functions that are not really separate concepts, and this was used in only one place.
(WebCore::RenderObject::absoluteTextRects): Added. Replaces Range::absoluteTextRects
for all callers outside the live range class and will eventually replace it entirely.
- rendering/RenderObject.h: Updated for the above.
Source/WebKit:
- WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
(-[WKDOMNode textRects]): Moved implementation here. There's no reason for Node
to have a textRects function, since it's a layout/rendering operation and a
single node is also an unusual special case, but for now at least we will keep
this legacy method.
- WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
(-[WKDOMRange textRects]): Changed to call RenderObject::absoluteTextRects
instead of Range::absoluteTextRects.
- WebProcess/WebPage/FindController.cpp:
(WebKit::FindController::updateFindUIAfterPageScroll): Use
RenderObject::absoluteTextRects instead of Range::absoluteRectRects.
(WebKit::FindController::findStringMatches): Ditto.
Source/WebKitLegacy/ios:
- WebCoreSupport/WebFrameIOS.mm:
(-[WebFrame closestCaretRectInMarkedTextRangeForPoint:]): Use
RenderObject::absoluteTextRects instead of Range::absoluteTextRects.
Also added some missing null checks and reorganized the function a
bit to make it more direct and slightly cleaerer.
Source/WebKitLegacy/mac:
- DOM/DOM.mm:
(-[DOMNode textRects]): Moved implementation here. There's no reason for Node
to have a textRects function, since it's a layout/rendering operation and a
single node is also an unusual special case, but for now we will keep this
legacy method for compatibility with old clients.
(-[DOMRange textRects]): Changed to call RenderObject::absoluteTextRects
instead of Range::absoluteTextRects.
- WebView/WebFrame.mm:
(-[WebFrame _rectsForRange:]): Changed to call -[DOMRange textRects] instead
of Range::absoluteTextRects. Don't really need two identical methods but
probably need to keep this around for compatiblitiy.
- 11:46 AM Changeset in webkit [259932] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening of mediastream tests
https://bugs.webkit.org/show_bug.cgi?id=210386
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 11:36 AM Changeset in webkit [259931] by
-
- 5 edits2 adds in trunk/Source/WebCore
REGRESSION (Safari 13.1?): Web Inspector: Debugger hang at breakpoint when using Keyboard Maestro
https://bugs.webkit.org/show_bug.cgi?id=210177
<rdar://problem/61485723>
Reviewed by Joseph Pecoraro.
Partial revert of r251036 <https://webkit.org/b/202716> to go back to using AppKit APIs
instead ofCFRunLoopRunInMode
. Only seems to affect WebKitLegacy.
- inspector/PageScriptDebugServer.h:
- inspector/PageScriptDebugServer.cpp:
(WebCore::PageScriptDebugServer::runEventLoopWhilePausedInternal):
(WebCore::PageScriptDebugServer::platformShouldContinueRunningEventLoopWhilePaused):
- inspector/mac/PageScriptDebugServerMac.mm: Added.
(WebCore::PageScriptDebugServer::platformShouldContinueRunningEventLoopWhilePaused):
- SourcesCocoa.txt:
- WebCore.xcodeproj/project.pbxproj:
- 8:35 AM Changeset in webkit [259930] by
-
- 19 edits in trunk/Source/WebCore
Use Node::length to replace Node::maxCharacterOffset and lastOffsetInNode; switch more offsets from int to unsigned
https://bugs.webkit.org/show_bug.cgi?id=210246
Reviewed by Antti Koivisto.
- The recently-added Node::length, which matches the DOM specification terminology for node offsets as used in ranges, is the same as the existing maxCharacterOffset and lastOffsetInNode functions. Deleted all uses of those and replaced them with calls to Node::length. One of the benefits of this is that Node::length is implemented more efficiently and is not a virtual function. Another is consistently matching the DOM specification terminology.
- Many offsets, including the ones in live ranges, are currently implemented as signed in WebKit, but are specified as unsigned in the DOM and HTML specifications. This has very little observable effect from JavaScript that can affect website compatibility, but it's still helpful to be consistent both with the specification and internally. Accordingly, changed some of these to unsigned; more to come later.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::previousBoundary): Use length instead of
maxCharacterOffset.
- dom/CharacterData.cpp:
(WebCore::CharacterData::maxCharacterOffset const): Deleted.
- dom/CharacterData.h: Deleted maxCharacterOffset override.
- dom/DocumentMarkerController.cpp:
(WebCore::DocumentMarkerController::shiftMarkers): Use length instead of
maxCharacterOffset.
- dom/Node.cpp:
(WebCore::Node::maxCharacterOffset const): Deleted.
- dom/Node.h: Deleted maxCharacterOffset.
- dom/Position.cpp:
(WebCore::Position::computeOffsetInContainerNode const): Use length instead
of lastOffsetInNode.
- dom/Position.h:
(WebCore::lastOffsetInNode): Deleted.
(WebCore::lastPositionInNode): Use length instead of lastOffsetInNode.
(WebCore::minOffsetForNode): Use length instead of maxCharacterOffset.
(WebCore::offsetIsBeforeLastNodeOffset): Ditto.
- dom/RangeBoundaryPoint.h:
(WebCore::RangeBoundaryPoint::setToEndOfNode): Use length instead of
maxCharacterOffset.
- editing/ApplyBlockElementCommand.cpp:
(WebCore::isNewLineAtPosition): Use length instead of maxCharacterOffset.
(WebCore::ApplyBlockElementCommand::rangeForParagraphSplittingTextNodesIfNeeded):
Ditto.
- editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::removeInlineStyle): Use length instead of
maxCharacterOffset.
- editing/Editing.cpp:
(WebCore::lastOffsetForEditing): Use length instead of mmaxCharacterOffset
and countChildNodes. Also improved the comment here.
- editing/EditingStyle.cpp:
(WebCore::EditingStyle::styleAtSelectionStart): Use length instead of
maxCharacterOffset.
- editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::doApplyForSingleParagraph): Use length instead
of lastOffsetInNode.
- editing/TextIterator.cpp:
(WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
USe length instead of lastOffsetInNode.
- editing/VisibleUnits.cpp:
(WebCore::previousBoundary): Use length instead of maxCharacterOffset.
- 8:14 AM Changeset in webkit [259929] by
-
- 6 edits in trunk/Source/WebInspectorUI
Web Inspector: CSS: variables should have a go-to arrow to quickly jump to the definition
https://bugs.webkit.org/show_bug.cgi?id=195775
<rdar://problem/48905785>
Reviewed by Timothy Hatcher.
Often when debugging/editing styles that use CSS variables, the desired workflow is to
modify the variable itself, not that specific usage. This is especially helpful when editing
colors saved in CSS variables.
Add an always visible go-to arrow immediately after the variable (e.g.
--XYZ (->)
) that
will jump to the declaration of the variable elsewhere in the style cascade.
- UserInterface/Views/SpreadsheetStyleProperty.js:
(WI.SpreadsheetStyleProperty.prototype._addVariableTokens):
- UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.css:
(.spreadsheet-style-declaration-editor .property .select-variable-property): Added.
- UserInterface/Base/Setting.js:
- UserInterface/Views/SettingsTabContentView.js:
(WI.SettingsTabContentView.prototype._createExperimentalSettingsView):
- Localizations/en.lproj/localizedStrings.js:
- 7:07 AM Changeset in webkit [259928] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, mark some WebInspector tests as Slow
https://bugs.webkit.org/show_bug.cgi?id=210380
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 5:36 AM Changeset in webkit [259927] by
-
- 2 edits in trunk/Tools
Buildbot: Force crash log submission after each test run (follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=210202
<rdar://problem/60508929>
Unreviewed follow-up fix.
- BuildSlaveSupport/ews-build/steps.py:
(WaitForCrashCollection): Remove spaces from step name.
- 5:07 AM Changeset in webkit [259926] by
-
- 2 edits in trunk/Tools
Buildbot: Force crash log submission after each test run (follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=210202
<rdar://problem/60508929>
Unreviewed follow-up fix.
- BuildSlaveSupport/wait-for-crash-collection: Improved error message.
- 4:28 AM Changeset in webkit [259925] by
-
- 3 edits in trunk/Tools
check-webkit-style should warn about 'decode' functions with missing WARN_UNUSED_RETURN attribute
<https://webkit.org/b/210336>
<rdar://problem/61585835>
Reviewed by Jonathan Bedard.
- Scripts/webkitpy/style/checkers/cpp.py:
(_FunctionState.post_modifiers): Add. Returns string of text
that appears after the function definition's list of parameters.
This is used to find the WARN_UNUSED_RETURN attribute in
function declarations in header files.
(_FunctionState.has_attribute): Add. Takes a string (or regex)
and searchs before and after the function definition for the
attribute.
(_FunctionState.has_return_type): Add. Takes a string (or
regex) and checks the return type of the fuction.
(_FunctionState.is_static): Add. Returns True for functions
with the 'static' modifier.
(check_function_definition): Add check for decode() functions
with missing WARN_UNUSED_RETURN attribute.
(CppChecker): Add 'security/missing_warn_unused_return' to the
list of enabled style checkers.
- Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTestBase.perform_function_definition_check): Add. This
runs the check_function_definition() function in cpp.py.
(CppStyleTest.test_decode_functions_missing_warn_unused_return): Add.
Tests for the new warning.
- 2:41 AM Changeset in webkit [259924] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening of flaky failures
https://bugs.webkit.org/show_bug.cgi?id=210376
Unreviewed gardening.
- platform/gtk/TestExpectations:
Apr 10, 2020:
- 11:56 PM Changeset in webkit [259923] by
-
- 3 edits in trunk/Source/WebKit
[GTK][WPE] Replace fopen/fclose by fopen/fseek functions in MemoryPressureMonitor
https://bugs.webkit.org/show_bug.cgi?id=209942
Reviewed by Adrian Perez de Castro.
Replacing the open()/close() logic to get the data from /proc/meminfo,
/proc/self/cgroup, ... with a new logic where the files are just
opened once and we just perform a seek to the initial position of
of an unbuffered file.
Also refactoring of some logic:
- Added the CGroupMemoryController class what encapsulates the logic to calculate the the total memory and the memory usage with cgroups.
- CGroupMemoryController encpasulates the FILE pointers to the relative files to cgroups.
- The memInfoFile, zoneInfoFile and cgroupControllerFile are now opened once in the Thread::create() invoked by the MemoryPressureMonitor::start().
- UIProcess/linux/MemoryPressureMonitor.cpp:
(WebKit::lowWatermarkPages):
(WebKit::calculateMemoryAvailable):
(WebKit::getCgroupFile):
(WebKit::getCgroupControllerPath):
(WebKit::systemMemoryUsedAsPercentage):
(WebKit::MemoryPressureMonitor::start):
(WebKit::CGroupMemoryController::setMemoryControllerPath):
(WebKit::CGroupMemoryController::disposeMemoryController):
(WebKit::CGroupMemoryController::getCgroupFileValue):
(WebKit::CGroupMemoryController::getMemoryTotalWithCgroup):
(WebKit::CGroupMemoryController::getMemoryUsageWithCgroup):
(WebKit::getCgroupFileValue): Deleted.
(WebKit::getMemoryTotalWithCgroup): Deleted.
(WebKit::getMemoryUsageWithCgroup): Deleted.
- UIProcess/linux/MemoryPressureMonitor.h:
(WebKit::CGroupMemoryController::isActive):
(WebKit::CGroupMemoryController::~CGroupMemoryController):
- 11:39 PM Changeset in webkit [259922] by
-
- 41 edits in trunk/Source
PersistentCoders should use modern decoding syntax
https://bugs.webkit.org/show_bug.cgi?id=207497
Patch by Alex Christensen <achristensen@webkit.org> on 2020-04-10
Reviewed by Darin Adler.
Source/WebCore:
- inspector/InspectorFrontendHost.cpp:
(WebCore::InspectorFrontendHost::showCertificate):
- loader/FetchOptions.h:
(WebCore::FetchOptions::decodePersistent):
- page/csp/ContentSecurityPolicyResponseHeaders.h:
(WebCore::ContentSecurityPolicyResponseHeaders::encode const):
(WebCore::ContentSecurityPolicyResponseHeaders::decode):
- platform/PasteboardCustomData.cpp:
(WebCore::PasteboardCustomData::fromSharedBuffer):
- platform/network/ResourceLoadPriority.h:
- platform/network/ResourceRequestBase.h:
(WebCore::ResourceRequestBase::encodeBase const):
(WebCore::ResourceRequestBase::decodeBase):
- platform/network/cf/CertificateInfo.h:
(WTF::Persistence::decodeCFData):
(WTF::Persistence::decodeSecTrustRef):
(WTF::Persistence::decodeCertificateChain):
(WTF::Persistence::Coder<WebCore::CertificateInfo>::encode):
(WTF::Persistence::Coder<WebCore::CertificateInfo>::decode):
- workers/service/server/RegistrationDatabase.cpp:
(WebCore::RegistrationDatabase::doPushChanges):
(WebCore::RegistrationDatabase::importRecords):
Source/WebKit:
- NetworkProcess/cache/CacheStorageEngineCache.cpp:
(WebKit::CacheStorage::decodeDOMCacheRecord):
(WebKit::CacheStorage::Cache::decodeRecordHeader):
- NetworkProcess/cache/CacheStorageEngineCaches.cpp:
(WebKit::CacheStorage::Caches::readOrigin):
(WebKit::CacheStorage::decodeCachesNames):
- NetworkProcess/cache/NetworkCacheCoders.cpp:
(WTF::Persistence::Coder<WebCore::HTTPHeaderMap>::decode):
- NetworkProcess/cache/NetworkCacheEntry.cpp:
(WebKit::NetworkCache::Entry::decodeStorageRecord):
- NetworkProcess/cache/NetworkCacheKey.cpp:
(WebKit::NetworkCache::Key::decode):
- NetworkProcess/cache/NetworkCacheKey.h:
- NetworkProcess/cache/NetworkCacheStorage.cpp:
(WebKit::NetworkCache::decodeRecordMetaData):
- NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp:
(WebKit::NetworkCache::SubresourceInfo::encode const):
(WebKit::NetworkCache::SubresourceInfo::decode):
(WebKit::NetworkCache::SubresourcesEntry::decodeStorageRecord):
- NetworkProcess/cache/NetworkCacheSubresourcesEntry.h:
- Shared/UserData.cpp:
(WebKit::UserData::decode):
- UIProcess/API/APIContentRuleListStore.cpp:
(API::decodeContentRuleListMetaData):
Source/WTF:
This paves the way for more serialized types that do not have a default constructor.
- wtf/persistence/PersistentCoder.h:
(WTF::Persistence::Coder::encode):
(WTF::Persistence::Coder::decode):
- wtf/persistence/PersistentCoders.cpp:
(WTF::Persistence::Coder<AtomString>::decode):
(WTF::Persistence::Coder<CString>::decode):
(WTF::Persistence::decodeStringText):
(WTF::Persistence::Coder<String>::decode):
(WTF::Persistence::Coder<SHA1::Digest>::decode):
- wtf/persistence/PersistentCoders.h:
(WTF::Persistence::Coder<Optional<T>>::decode):
(WTF::Persistence::Coder<Seconds>::decode):
(WTF::Persistence::Coder<WallTime>::decode):
- wtf/persistence/PersistentDecoder.cpp:
(WTF::Persistence::Decoder::decodeNumber):
(WTF::Persistence::Decoder::operator>>):
(WTF::Persistence::Decoder::decode): Deleted.
- wtf/persistence/PersistentDecoder.h:
(WTF::Persistence::Decoder::operator>>):
(WTF::Persistence::Decoder::decode): Deleted.
(WTF::Persistence::Decoder::decodeEnum): Deleted.
- wtf/persistence/PersistentEncoder.h:
(WTF::Persistence::Encoder::operator<<):
(WTF::Persistence::Encoder::encode): Deleted.
(WTF::Persistence::Encoder::encodeEnum): Deleted.
- 10:17 PM Changeset in webkit [259921] by
-
- 4 edits2 adds in trunk
[macOS] Fix scrollbar display for async-scrolling overflow
https://bugs.webkit.org/show_bug.cgi?id=194101
Reviewed by Tim Horton.
Source/WebCore:
We need to call positionOverflowControlsLayers() from RenderLayerBacking::updateGeometry(),
otherwise, on first load, scrollbar layers have no size because we try to position them
before we've created them.
Test: fast/scrolling/mac/overflow-scrollbars-should-be-visible.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::positionOverflowControls):
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateGeometry):
LayoutTests:
Mismatch ref test that tests that overlay scrollbars show up.
- fast/scrolling/mac/overflow-scrollbars-should-be-visible-expected-mismatch.html: Added.
- fast/scrolling/mac/overflow-scrollbars-should-be-visible.html: Added.
- 10:09 PM Changeset in webkit [259920] by
-
- 1 edit69 adds in trunk/Websites/webkit.org
Unreviewed, check in some files for a blog post.
- blog-files/speculation-in-jsc: Added.
- blog-files/speculation-in-jsc/ai-check-elimination-examples.graffle: Added.
- blog-files/speculation-in-jsc/ai-check-elimination-examples.svg: Added.
- blog-files/speculation-in-jsc/bigger-data-flow-graph.graffle: Added.
- blog-files/speculation-in-jsc/bigger-data-flow-graph.svg: Added.
- blog-files/speculation-in-jsc/bytecode-to-dfg-ir-lowering-with-osr-phases.graffle: Added.
- blog-files/speculation-in-jsc/bytecode-to-dfg-ir-lowering-with-osr-phases.svg: Added.
- blog-files/speculation-in-jsc/bytecode-to-ssa-conversion-with-osr.graffle: Added.
- blog-files/speculation-in-jsc/bytecode-to-ssa-conversion-with-osr.svg: Added.
- blog-files/speculation-in-jsc/dfg-and-ftl-architecture.graffle: Added.
- blog-files/speculation-in-jsc/dfg-and-ftl-architecture.svg: Added.
- blog-files/speculation-in-jsc/dfg-arithadd-explainer.graffle: Added.
- blog-files/speculation-in-jsc/dfg-arithadd-explainer.svg: Added.
- blog-files/speculation-in-jsc/dfg-pipeline.graffle: Added.
- blog-files/speculation-in-jsc/dfg-pipeline.svg: Added.
- blog-files/speculation-in-jsc/dfg-threaded-cps-example.graffle: Added.
- blog-files/speculation-in-jsc/dfg-threaded-cps-example.svg: Added.
- blog-files/speculation-in-jsc/double-monomorphic-inline-cache-speculation.graffle: Added.
- blog-files/speculation-in-jsc/double-monomorphic-inline-cache-speculation.svg: Added.
- blog-files/speculation-in-jsc/example-data-flow-graph.graffle: Added.
- blog-files/speculation-in-jsc/example-data-flow-graph.svg: Added.
- blog-files/speculation-in-jsc/five-parts-of-speculation.graffle: Added.
- blog-files/speculation-in-jsc/five-parts-of-speculation.svg: Added.
- blog-files/speculation-in-jsc/ftl-dfg-ir-to-bytecode-osr-exit.graffle: Added.
- blog-files/speculation-in-jsc/ftl-dfg-ir-to-bytecode-osr-exit.svg: Added.
- blog-files/speculation-in-jsc/ftl-pipeline.graffle: Added.
- blog-files/speculation-in-jsc/ftl-pipeline.svg: Added.
- blog-files/speculation-in-jsc/ftl-stackmaps.graffle: Added.
- blog-files/speculation-in-jsc/ftl-stackmaps.svg: Added.
- blog-files/speculation-in-jsc/ideal-jsc-optimization-workflow.graffle: Added.
- blog-files/speculation-in-jsc/ideal-jsc-optimization-workflow.svg: Added.
- blog-files/speculation-in-jsc/inline-caches-per-tier-dynamic.graffle: Added.
- blog-files/speculation-in-jsc/inline-caches-per-tier-dynamic.svg: Added.
- blog-files/speculation-in-jsc/int32-add-diamond-speculation.graffle: Added.
- blog-files/speculation-in-jsc/int32-add-diamond-speculation.svg: Added.
- blog-files/speculation-in-jsc/int32-add-osr-speculation.graffle: Added.
- blog-files/speculation-in-jsc/int32-add-osr-speculation.svg: Added.
- blog-files/speculation-in-jsc/jsc-tier-architecture.graffle: Added.
- blog-files/speculation-in-jsc/jsc-tier-architecture.svg: Added.
- blog-files/speculation-in-jsc/jsc-tiers.graffle: Added.
- blog-files/speculation-in-jsc/jsc-tiers.svg: Added.
- blog-files/speculation-in-jsc/object-model.graffle: Added.
- blog-files/speculation-in-jsc/object-model.svg: Added.
- blog-files/speculation-in-jsc/optimization-workflow-c-vs-js.graffle: Added.
- blog-files/speculation-in-jsc/optimization-workflow-c-vs-js.svg: Added.
- blog-files/speculation-in-jsc/optimization-workflow-js.graffle: Added.
- blog-files/speculation-in-jsc/optimization-workflow-js.svg: Added.
- blog-files/speculation-in-jsc/osr-exit-bytecode-example.graffle: Added.
- blog-files/speculation-in-jsc/osr-exit-bytecode-example.svg: Added.
- blog-files/speculation-in-jsc/osr-stack-register-shuffle.graffle: Added.
- blog-files/speculation-in-jsc/osr-stack-register-shuffle.svg: Added.
- blog-files/speculation-in-jsc/polyvariant-inline-cache-speculation.graffle: Added.
- blog-files/speculation-in-jsc/polyvariant-inline-cache-speculation.svg: Added.
- blog-files/speculation-in-jsc/prediction-propagation-and-value-profiling.graffle: Added.
- blog-files/speculation-in-jsc/prediction-propagation-and-value-profiling.svg: Added.
- blog-files/speculation-in-jsc/prediction-propagation-rules-add.graffle: Added.
- blog-files/speculation-in-jsc/prediction-propagation-rules-add.svg: Added.
- blog-files/speculation-in-jsc/prediction-propagation-rules-getbyval.graffle: Added.
- blog-files/speculation-in-jsc/prediction-propagation-rules-getbyval.svg: Added.
- blog-files/speculation-in-jsc/sample-property-lookup.graffle: Added.
- blog-files/speculation-in-jsc/sample-property-lookup.svg: Added.
- blog-files/speculation-in-jsc/single-monomorphic-inline-cache-speculation.graffle: Added.
- blog-files/speculation-in-jsc/single-monomorphic-inline-cache-speculation.svg: Added.
- blog-files/speculation-in-jsc/speculated-types.graffle: Added.
- blog-files/speculation-in-jsc/speculated-types.svg: Added.
- blog-files/speculation-in-jsc/xy-objects-as-maps.graffle: Added.
- blog-files/speculation-in-jsc/xy-objects-as-maps.svg: Added.
- blog-files/speculation-in-jsc/xy-objects-with-structures.graffle: Added.
- blog-files/speculation-in-jsc/xy-objects-with-structures.svg: Added.
- 8:59 PM Changeset in webkit [259919] by
-
- 9 edits1 add in trunk
[ECMA-402] Properly implement BigInt.prototype.toLocaleString
https://bugs.webkit.org/show_bug.cgi?id=209782
Reviewed by Darin Adler.
JSTests:
- stress/bigint-toLocaleString.js: Added.
- stress/intl-numberformat.js: Add test cases.
- test262/expectations.yaml: Mark 10 test cases as passing.
Source/JavaScriptCore:
Our BigInt's toLocaleString has been simply falling back to toString instead of following ECMA-402.
(https://tc39.es/ecma402/#sup-bigint.prototype.tolocalestring)
Since {Number, BigInt}.prototype.toLocaleString are internally the same as Intl.NumberFormat.prototype.format,
this patch simultaneously lets the latter method take a BigInt argument.
(https://tc39.es/ecma402/#sec-number-format-functions)
This patch continues to use the old unum_* API instead of ICU 62's new unumf_* API,
as the latter would require a large refactor as well as fallback paths.
(This will, however, be a prerequisite for https://bugs.webkit.org/show_bug.cgi?id=209774.)
- runtime/BigIntPrototype.cpp:
(JSC::bigIntProtoFuncToString):
(JSC::bigIntProtoFuncToLocaleString):
(JSC::bigIntProtoFuncToStringImpl): Deleted.
- runtime/IntlNumberFormat.cpp:
(JSC::IntlNumberFormat::format):
(JSC::IntlNumberFormat::formatNumber): Deleted.
- runtime/IntlNumberFormat.h:
- runtime/IntlNumberFormatPrototype.cpp:
(JSC::IntlNumberFormatFuncFormat):
(JSC::IntlNumberFormatPrototypeGetterFormat):
(JSC::IntlNumberFormatFuncFormatNumber): Deleted.
- runtime/NumberPrototype.cpp:
(JSC::numberProtoFuncToLocaleString):
- 8:03 PM Changeset in webkit [259918] by
-
- 3 edits in trunk/LayoutTests
[GTK] Flaky test gardening.
Unreviewed test gardening.
- platform/gtk-wayland/TestExpectations:
- platform/gtk/TestExpectations:
- 6:57 PM Changeset in webkit [259917] by
-
- 6 edits in trunk/Source/WTF
Follow-up: Add WARN_UNUSED_RETURN to decode methods in Source/WTF
<https://webkit.org/b/210323>
<rdar://problem/61565764>
Changes based on feedback from Alex Christensen and Darin Adler:
- Remove WARN_UNUSED_RETURN from methods returning Optional<>.
- Place WARN_UNUSED_RETURN consistently before the return type.
- wtf/MediaTime.h:
- wtf/MonotonicTime.h:
- wtf/ObjectIdentifier.h:
(WTF::ObjectIdentifier::decode):
- wtf/Seconds.h:
- wtf/URL.h:
- 6:23 PM Changeset in webkit [259916] by
-
- 4 edits2 adds in trunk
[Async overflow] Can't scroll vertically while over a horizontal scroller in this content
https://bugs.webkit.org/show_bug.cgi?id=210356
<rdar://problem/60523731>
Reviewed by Tim Horton.
Source/WebCore:
https://dozermapper.github.io/gitbook/documentation/customconverter.html has style
that triggers mismatched containing block and z-order layer trees, triggering the creation
of an "overflow scroll proxy node" in the scrolling tree.
If we encounter such a node in our ancestor tree walk while deciding which node to send
a wheel event too, we need to jump to the node that the proxy node is representing.
Test: fast/scrolling/mac/nested-overflow-proxy-node.html
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::handleWheelEvent):
LayoutTests:
- fast/scrolling/mac/absolute-in-overflow-scroll.html:
- fast/scrolling/mac/nested-overflow-proxy-node-expected.txt: Added.
- fast/scrolling/mac/nested-overflow-proxy-node.html: Added.
- 5:41 PM Changeset in webkit [259915] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed, reverting r259764.
Causes layout test crashes under GuardMalloc
Reverted changeset:
"Release WebGLLayer earlier in ~GraphicsContextGLOpenGL"
https://bugs.webkit.org/show_bug.cgi?id=210213
https://trac.webkit.org/changeset/259764
- 5:09 PM Changeset in webkit [259914] by
-
- 3 edits in trunk/Source/WebKit
Web Inspector: add
broadcastConsoleMessage
calls for new ITPDebug logs after r259275
https://bugs.webkit.org/show_bug.cgi?id=210362
Reviewed by John Wilander.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
(WebKit::ResourceLoadStatisticsDatabaseStore::logFrameNavigation):
(WebKit::ResourceLoadStatisticsDatabaseStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor):
- NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::logFrameNavigation):
(WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor):
- 4:38 PM Changeset in webkit [259913] by
-
- 2 edits in trunk/Source/WebKit
[IPC Hardening] WebHitTestResultData IPC decoder should validate imageSharedMemory / imageSize
https://bugs.webkit.org/show_bug.cgi?id=210361
<rdar://problem/60758280>
Reviewed by Geoffrey Garen.
WebHitTestResultData IPC decoder should validate imageSharedMemory / imageSize to make sure they are consistent.
- Shared/WebHitTestResultData.cpp:
(WebKit::WebHitTestResultData::decode):
- 4:37 PM Changeset in webkit [259912] by
-
- 4 edits in trunk
REGRESSION: (r259850)[ Mac wk1 Debug ] media/track/track-user-stylesheet.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=210350
Reviewed by Daniel Bates.
Source/WebCore:
Revert the change in r259850.
- page/CaptionUserPreferences.cpp:
(WebCore::CaptionUserPreferences::setCaptionsStyleSheetOverride):
LayoutTests:
Make the test reliable by replacing the timer-based approach with testExpectedEventually.
- media/track/track-user-stylesheet.html:
- 4:15 PM Changeset in webkit [259911] by
-
- 3 edits2 adds in trunk
Null ptr Deref in RadioButtonGroups::updateCheckedState
https://bugs.webkit.org/show_bug.cgi?id=210353
Patch by Pinki Gyanchandani <pgyanchandani@apple.com> on 2020-04-10
Reviewed by Chris Dumez.
Source/WebCore:
This crash happened when the default checked setter was called for an input element and RadioButtonGroup was NULL.
Added condition to dereference the group only if it is non-null.
Test: fast/forms/input-element-default-checked-setter-crash.html
- dom/RadioButtonGroups.cpp:
(WebCore::RadioButtonGroups::updateCheckedState):
LayoutTests:
Added a regression test.
- fast/forms/input-element-default-checked-setter-crash-expected.txt: Added.
- fast/forms/input-element-default-checked-setter-crash.html: Added.
- 4:08 PM Changeset in webkit [259910] by
-
- 18 edits in trunk
Add SPI to handle proxy authentication and require secure proxy connections
https://bugs.webkit.org/show_bug.cgi?id=210343
<rdar://problem/61546396> <rdar://problem/61546519> and <rdar://problem/61546658>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-04-10
Reviewed by Geoffrey Garen.
Source/WebCore/PAL:
- pal/spi/cf/CFNetworkSPI.h:
Source/WebKit:
I also use WKWebViewConfiguration.connectionProxyDictionary instead of CFURLRequestSetProxySettings
to set proxy settings. The equivalence of this behavior is covered by the API tests.
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):
- NetworkProcess/NetworkSessionCreationParameters.h:
- NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
(WebKit::NetworkDataTaskCocoa::applySniffingPoliciesAndBindRequestToInferfaceIfNeeded):
- NetworkProcess/cocoa/NetworkSessionCocoa.h:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h:
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm:
(-[_WKWebsiteDataStoreConfiguration preventsSystemHTTPProxyAuthentication]):
(-[_WKWebsiteDataStoreConfiguration setPreventsSystemHTTPProxyAuthentication:]):
(-[_WKWebsiteDataStoreConfiguration requiresSecureHTTPSProxyConnection]):
(-[_WKWebsiteDataStoreConfiguration setRequiresSecureHTTPSProxyConnection:]):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
(WebKit::WebsiteDataStoreConfiguration::copy const):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:
(WebKit::WebsiteDataStoreConfiguration::preventsSystemHTTPProxyAuthentication const):
(WebKit::WebsiteDataStoreConfiguration::setPreventsSystemHTTPProxyAuthentication):
(WebKit::WebsiteDataStoreConfiguration::requiresSecureHTTPSProxyConnection const):
(WebKit::WebsiteDataStoreConfiguration::setRequiresSecureHTTPSProxyConnection):
Tools:
- TestWebKitAPI/TCPServer.cpp:
(TestWebKitAPI::TCPServer::startSecureConnection):
(TestWebKitAPI::TCPServer::TCPServer):
- TestWebKitAPI/TCPServer.h:
- TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
(-[ProxyDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(-[ProxyDelegate waitForAlert]):
(-[ProxyDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
(TestWebKitAPI::TEST):
- 4:01 PM Changeset in webkit [259909] by
-
- 7 edits in trunk/JSTests
Unreviewed gardening for JSTests/stress. Remove skips that were forgotten in r259658.
- stress/array-toLocaleString.js:
- stress/date-toLocaleString.js:
- stress/number-toLocaleString.js:
- stress/string-localeCompare.js:
- stress/string-toLocaleLowerCase.js:
- stress/string-toLocaleUpperCase.js:
- 3:35 PM Changeset in webkit [259908] by
-
- 2 edits in trunk/Source/WebKit
[IPC Hardening] WebDeviceOrientationAndMotionAccessController::shouldAllowAccess() should not crash on invalid input
https://bugs.webkit.org/show_bug.cgi?id=210359
<rdar://problem/60092453>
Reviewed by Geoffrey Garen.
Make sure the security origin is a valid HashMap key before trying to do a HashMap lookup.
The security origin is coming from IPC and thus cannot be trusted.
- UIProcess/WebsiteData/WebDeviceOrientationAndMotionAccessController.cpp:
(WebKit::WebDeviceOrientationAndMotionAccessController::cachedDeviceOrientationPermission const):
- 3:22 PM Changeset in webkit [259907] by
-
- 3 edits in trunk/LayoutTests
REGRESSION (r258850) http/tests/frame-throttling/timer-throttle-in-cross-origin-subframe.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=210358
<rdar://problem/61266282>
Reviewed by Darin Adler.
r258850 ported window.postMessage() to the HTML event loop. Because event loops are per security origin,
the ordering of messages from the same-origin & cross-origin iframes is no longer guaranteed. This led
to flakiness due to message logging in the output but the test did not actually require a particular
ordering otherwise. To address the flakiness, this patch silences the logging of messages received.
- http/tests/frame-throttling/timer-throttle-in-cross-origin-subframe-expected.txt:
- http/tests/frame-throttling/timer-throttle-in-cross-origin-subframe.html:
- 2:57 PM Changeset in webkit [259906] by
-
- 5 edits in trunk/Source/WebKit
Add capability to opt in specific domains into SameSite=strict bounce tracking protection
https://bugs.webkit.org/show_bug.cgi?id=210347
<rdar://problem/61593323>
Reviewed by Brent Fulgham.
This change adds an additional opt-in condition to the shouldEnforceSameSiteStrictFor()
functions in both ResourceLoadStatisticsMemoryStore and ResourceLoadStatisticsDatabaseStore.
No new tests. This adds domain specific logic, quirk-style. The logFrameNavigation()
changes are covered by existing tests.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
(WebKit::ResourceLoadStatisticsDatabaseStore::logFrameNavigation):
Now only captures real redirects for the purposes of the SameSite=strict rule.
(WebKit::ResourceLoadStatisticsDatabaseStore::shouldEnforceSameSiteStrictFor):
- NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::logFrameNavigation):
Now only captures real redirects for the purposes of the SameSite=strict rule.
(WebKit::ResourceLoadStatisticsMemoryStore::shouldEnforceSameSiteStrictFor):
(WebKit::ResourceLoadStatisticsMemoryStore::registrableDomainsToDeleteOrRestrictWebsiteDataFor):
Removed stray newline.
- NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:
(WebKit::ResourceLoadStatisticsStore::shouldEnforceSameSiteStrictForSpecificDomain const):
The new function with domains to subject to the new rule.
- NetworkProcess/Classifier/ResourceLoadStatisticsStore.h:
- 2:50 PM Changeset in webkit [259905] by
-
- 3 edits1 add in trunk
The rhs in
ReadModifyResolveNode
should be evaluated before throwing an exception if the lhs is read-only
https://bugs.webkit.org/show_bug.cgi?id=210317
Reviewed by Ross Kirsling.
JSTests:
- stress/const-read-modify-assignment-eval-rhs-before-exception.js: Added.
Source/JavaScriptCore:
- bytecompiler/NodesCodegen.cpp:
(JSC::emitReadModifyAssignment):
(JSC::ReadModifyResolveNode::emitBytecode):
If the correspondingVariable
is read-only, pass it toemitReadModifyAssignment
as an
additional optionl argument, where it will be used toemitReadOnlyExceptionIfNeeded
after
the rhs is emitted.
- 2:38 PM Changeset in webkit [259904] by
-
- 3 edits2 adds in branches/safari-609-branch
Cherry-pick r259802. rdar://problem/61477495
Source/WebKit:
[MacOS] REGRESSION (r253275): Stopping a cloned audio capture track should not stop the original audio track
https://bugs.webkit.org/show_bug.cgi?id=210259
<rdar://problem/61466486>
Reviewed by Eric Carlson.
We changed video track cloning so that each cloned track would get its own source.
The source is getting video sample from the real capture source.
The real capture source will get stopped if all its client sources are stopped.
For audio, we are still using the same audio source for each track.
We should thus not close the source until all its tracks are stopped.
To do so, we reuse RealtimeMediaSource::requestToEnd instead of directly sending
the order to stop observing the remote audio source.
Test: fast/mediastream/mediastreamtrack-audio-clone.html
- WebProcess/cocoa/UserMediaCaptureManager.cpp: (WebKit::UserMediaCaptureManager::Source::requestToEnd): (WebKit::UserMediaCaptureManager::Source::stopBeingObserved): Deleted.
LayoutTests:
[MacOS] Stopping a cloned audio capture track should not stop the original audio track
https://bugs.webkit.org/show_bug.cgi?id=210259
<rdar://problem/61466486>
Reviewed by Eric Carlson.
- fast/mediastream/mediastreamtrack-audio-clone-expected.txt: Added.
- fast/mediastream/mediastreamtrack-audio-clone.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259802 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:23 PM Changeset in webkit [259903] by
-
- 18 edits6 adds in branches/safari-609-branch
Cherry-pick r259830. rdar://problem/61596886
REGRESSION: CSS animations inside an embedded SVG image do not animate
https://bugs.webkit.org/show_bug.cgi?id=209370
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-04-09
Reviewed by Simon Fraser.
Source/WebCore:
If WebAnimation is enabled and the SVGImage includes CSS animations, the
DocumentTimeline is added to the SVGDocument of the embedded SVGImage.
Because the SVGImage has its own Page the RenderingUpdate is scheduled
and the updateRendering steps run in this Page.
The Page of the SVGImage is inactive such that scheduling RenderingUpdate
fails; therefore the updateRendering steps never run and the CSS animation
never advances.
The fix is:
1) Scheduling the RenderingUpdate: This has to happen in the Page which
contains the renderer of the SVGImage. Because DocumentTimeline is
added to SVGDocument, this scheduling will go through these hubs:
- DocumentTimeline
- Page
- ChromeClient -> SVGImageChromeClient
- SVGImage
- ImageObserver -> CachedImageObserver
- CachedImage
- CachedImageClient -> RenderElement
- Page
2) Running the updateRendering steps: Each document in the Page will
enumerate its cached SVGImages. The updateRendering of the Page of
each SVGImage will be called.
To make enumerating the cached SVGImages of a Document faster, the URL
of the cached SVGImage will be added to the cachedSVGImagesURLs of
CachedResourceLoader when notifyFinished() is called for associated
CachedImage.
Tests: svg/animations/css-animation-background-svg.html
svg/animations/css-animation-embedded-svg.html
svg/animations/css-animation-hover-svg.html
- animation/DocumentTimeline.cpp: (WebCore::DocumentTimeline::scheduleAnimationResolution): (WebCore::DocumentTimeline::updateAnimationsAndSendEvents):
- html/ImageBitmap.cpp:
- loader/cache/CachedImage.cpp: (WebCore::CachedImage::hasSVGImage const): (WebCore::CachedImage::CachedImageObserver::scheduleTimedRenderingUpdate): (WebCore::CachedImage::scheduleTimedRenderingUpdate):
- loader/cache/CachedImage.h:
- loader/cache/CachedImageClient.h: (WebCore::CachedImageClient::scheduleTimedRenderingUpdate):
- loader/cache/CachedResourceLoader.cpp: (WebCore::isSVGImageCachedResource): (WebCore::cachedResourceSVGImage): (WebCore::CachedResourceLoader::notifyFinished):
- (WebCore
- const):
- loader/cache/CachedResourceLoader.h:
- page/ChromeClient.h: (WebCore::ChromeClient::scheduleTimedRenderingUpdate):
- page/Page.cpp: (WebCore::Page::scheduleTimedRenderingUpdate): (WebCore::Page::updateRendering):
- page/Page.h:
- platform/graphics/ImageObserver.h:
- rendering/RenderElement.cpp: (WebCore::RenderElement::notifyFinished): (WebCore::RenderElement::scheduleTimedRenderingUpdate):
- rendering/RenderElement.h:
- rendering/RenderImage.cpp: (WebCore::RenderImage::notifyFinished):
- svg/graphics/SVGImage.h:
- svg/graphics/SVGImageClients.h:
LayoutTests:
- svg/animations/css-animation-background-svg-expected.html: Added.
- svg/animations/css-animation-background-svg.html: Added.
- svg/animations/css-animation-embedded-svg-expected.html: Added.
- svg/animations/css-animation-embedded-svg.html: Added.
- svg/animations/css-animation-hover-svg-expected.html: Added.
- svg/animations/css-animation-hover-svg.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259830 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:23 PM Changeset in webkit [259902] by
-
- 40 edits in branches/safari-609-branch
Cherry-pick r259829. rdar://problem/61596883
Remove legacy X-WebKit-CSP header support
https://bugs.webkit.org/show_bug.cgi?id=210256
Source/WebCore:
<rdar://problem/60634363>
Reviewed by Geoffrey Garen.
Supporting this header is causes compatibly issues for some sites
and they appear to be misconfigured. Additionally, no other
browser has supported these headers in many years. This patch
removes all support for the legacy X-WebKit-CSP header.
- dom/Document.cpp: (WebCore::Document::processHttpEquiv):
- page/csp/ContentSecurityPolicyDirectiveList.cpp: (WebCore::ContentSecurityPolicyDirectiveList::ContentSecurityPolicyDirectiveList):
- page/csp/ContentSecurityPolicyResponseHeaders.cpp: (WebCore::ContentSecurityPolicyResponseHeaders::ContentSecurityPolicyResponseHeaders):
- page/csp/ContentSecurityPolicyResponseHeaders.h:
- platform/network/HTTPHeaderNames.in:
- platform/network/ResourceResponseBase.cpp: (WebCore::isSafeCrossOriginResponseHeader):
LayoutTests:
Reviewed by Geoffrey Garen.
Fix tests so they ensure we don't respect legacy CSP headers anymore.
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-get-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-get-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-javascript-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-javascript-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-invalidnonce-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-invalidnonce.html:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2.php:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259829 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:23 PM Changeset in webkit [259901] by
-
- 2 edits in branches/safari-609-branch/Source/WebCore
Cherry-pick r259798. rdar://problem/61596876
Use more WeakPtr in RenderTreeBuilder::FirstLetter
https://bugs.webkit.org/show_bug.cgi?id=210251
<rdar://problem/61180381>
Reviewed by Zalan Bujtas.
For safety.
- rendering/updating/RenderTreeBuilderFirstLetter.cpp: (WebCore::RenderTreeBuilder::FirstLetter::createRenderers):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259798 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:10 PM Changeset in webkit [259900] by
-
- 2003 edits in trunk
Changes to shared testing JS files should not cause test failures due to console message line numbers changing
https://bugs.webkit.org/show_bug.cgi?id=210303
Reviewed by Simon Fraser.
LayoutTests/imported/w3c:
- web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args-expected.txt:
- web-platform-tests/2dcontext/imagebitmap/createImageBitmap-serializable-expected.txt:
- web-platform-tests/2dcontext/imagebitmap/createImageBitmap-transfer-expected.txt:
- web-platform-tests/2dcontext/wide-gamut-canvas/canvas-createImageBitmap-e_srgb-expected.txt:
- web-platform-tests/2dcontext/wide-gamut-canvas/imageData-colorManagedBehavior-expected.txt:
- web-platform-tests/FileAPI/FileReader/workers-expected.txt:
- web-platform-tests/FileAPI/url/multi-global-origin-serialization.sub-expected.txt:
- web-platform-tests/FileAPI/url/sandboxed-iframe-expected.txt:
- web-platform-tests/IndexedDB/bigint_value-expected.txt:
- web-platform-tests/IndexedDB/fire-upgradeneeded-event-exception-expected.txt:
- web-platform-tests/IndexedDB/structured-clone.any-expected.txt:
- web-platform-tests/IndexedDB/structured-clone.any.worker-expected.txt:
- web-platform-tests/WebCryptoAPI/derive_bits_keys/test_ecdh_bits-expected.txt:
- web-platform-tests/content-security-policy/navigation/to-javascript-parent-initiated-parent-csp-expected.txt:
- web-platform-tests/content-security-policy/navigation/to-javascript-url-script-src-expected.txt:
- web-platform-tests/content-security-policy/script-src-attr-elem/script-src-attr-allowed-src-blocked-expected.txt:
- web-platform-tests/content-security-policy/script-src-attr-elem/script-src-elem-allowed-src-blocked-expected.txt:
- web-platform-tests/content-security-policy/script-src/hash-always-converted-to-utf-8/iso-8859-1-expected.txt:
- web-platform-tests/content-security-policy/script-src/hash-always-converted-to-utf-8/iso-8859-3-expected.txt:
- web-platform-tests/content-security-policy/script-src/hash-always-converted-to-utf-8/iso-8859-7-expected.txt:
- web-platform-tests/content-security-policy/script-src/hash-always-converted-to-utf-8/iso-8859-9-expected.txt:
- web-platform-tests/content-security-policy/script-src/javascript-window-open-blocked-expected.txt:
- web-platform-tests/content-security-policy/script-src/script-src-1_1-expected.txt:
- web-platform-tests/content-security-policy/script-src/script-src-1_2-expected.txt:
- web-platform-tests/content-security-policy/script-src/script-src-1_2_1-expected.txt:
- web-platform-tests/content-security-policy/script-src/script-src-1_4_1-expected.txt:
- web-platform-tests/content-security-policy/script-src/scriptnonce-and-scripthash.sub-expected.txt:
- web-platform-tests/content-security-policy/script-src/scriptnonce-ignore-unsafeinline.sub-expected.txt:
- web-platform-tests/content-security-policy/securitypolicyviolation/script-sample-expected.txt:
- web-platform-tests/content-security-policy/securitypolicyviolation/script-sample-no-opt-in-expected.txt:
- web-platform-tests/content-security-policy/securitypolicyviolation/style-sample-expected.txt:
- web-platform-tests/content-security-policy/securitypolicyviolation/style-sample-no-opt-in-expected.txt:
- web-platform-tests/content-security-policy/securitypolicyviolation/targeting-expected.txt:
- web-platform-tests/content-security-policy/style-src/inline-style-allowed-while-cloning-objects.sub-expected.txt:
- web-platform-tests/content-security-policy/style-src/style-src-error-event-fires-expected.txt:
- web-platform-tests/content-security-policy/style-src/style-src-inline-style-nonce-blocked-error-event-expected.txt:
- web-platform-tests/content-security-policy/style-src/stylehash-basic-blocked.sub-expected.txt:
- web-platform-tests/content-security-policy/style-src/stylenonce-allowed.sub-expected.txt:
- web-platform-tests/content-security-policy/style-src/stylenonce-blocked.sub-expected.txt:
- web-platform-tests/content-security-policy/svg/scripted-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_allowed-href-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_allowed-href_blank-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_allowed-window_location-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_allowed-window_open-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_denied_missing_unsafe_hashes-href-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_denied_missing_unsafe_hashes-href_blank-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_denied_missing_unsafe_hashes-window_location-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_denied_missing_unsafe_hashes-window_open-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_denied_wrong_hash-href-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_denied_wrong_hash-href_blank-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_denied_wrong_hash-window_location-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/javascript_src_denied_wrong_hash-window_open-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/script_event_handlers_allowed-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/script_event_handlers_denied_missing_unsafe_hashes-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/script_event_handlers_denied_wrong_hash-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/style_attribute_denied_missing_unsafe_hashes-expected.txt:
- web-platform-tests/content-security-policy/unsafe-hashes/style_attribute_denied_wrong_hash-expected.txt:
- web-platform-tests/css/css-animations/keyframes-remove-documentElement-crash-expected.txt:
- web-platform-tests/css/css-fonts/font-display/font-display-feature-policy-report-only.tentative-expected.txt:
- web-platform-tests/css/css-fonts/font-display/font-display-feature-policy-reporting.tentative-expected.txt:
- web-platform-tests/css/css-properties-values-api/typedom.tentative-expected.txt:
- web-platform-tests/css/css-properties-values-api/unit-cycles-expected.txt:
- web-platform-tests/css/css-shapes/spec-examples/shape-outside-018-expected.txt:
- web-platform-tests/css/css-values/viewport-units-css2-001-expected.txt:
- web-platform-tests/custom-elements/parser/parser-fallsback-to-unknown-element-expected.txt:
- web-platform-tests/custom-elements/upgrading/upgrading-enqueue-reactions-expected.txt:
- web-platform-tests/dom/events/Event-dispatch-throwing-expected.txt:
- web-platform-tests/dom/events/EventListener-handleEvent-expected.txt:
- web-platform-tests/dom/events/EventTarget-dispatchEvent-expected.txt:
- web-platform-tests/domxpath/callback-interface-expected.txt:
- web-platform-tests/encoding/streams/decode-utf8.any.worker-expected.txt:
- web-platform-tests/encoding/streams/realms.window-expected.txt:
- web-platform-tests/fetch/api/basic/scheme-blob-expected.txt:
- web-platform-tests/fetch/api/basic/scheme-others-expected.txt:
- web-platform-tests/fetch/corb/script-js-mislabeled-as-html.sub-expected.txt:
- web-platform-tests/fetch/corb/style-css-with-json-parser-breaker.sub-expected.txt:
- web-platform-tests/fetch/sec-metadata/fetch.tentative.https.sub-expected.txt:
- web-platform-tests/fetch/sec-metadata/sharedworker.tentative.https.sub-expected.txt:
- web-platform-tests/fetch/sec-metadata/xslt.tentative.https.sub-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/javascript-url-global-scope-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/navigation-unload-form-submit-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/unloading-documents/001-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/unloading-documents/prompt-and-unload-script-closeable-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/unloading-documents/prompt/002-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/unloading-documents/prompt/003-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/unloading-documents/prompt/004-expected.txt:
- web-platform-tests/html/browsers/browsing-the-web/unloading-documents/unload/002-expected.txt:
- web-platform-tests/html/browsers/history/joint-session-history/joint-session-history-remove-iframe-expected.txt:
- web-platform-tests/html/browsers/history/the-location-interface/location-prototype-setting-same-origin-domain.sub-expected.txt:
- web-platform-tests/html/browsers/offline/appcache/appcache-iframe.https-expected.txt:
- web-platform-tests/html/browsers/offline/appcache/workers/appcache-worker-expected.txt:
- web-platform-tests/html/browsers/offline/appcache/workers/appcache-worker.https-expected.txt:
- web-platform-tests/html/browsers/offline/application-cache-api/api_status_idle.https-expected.txt:
- web-platform-tests/html/browsers/offline/application-cache-api/api_swapcache_error.https-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_cached-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_cached.https-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_checking-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_checking.https-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_noupdate-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_noupdate.https-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_progress-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_progress.https-expected.txt:
- web-platform-tests/html/browsers/offline/manifest_url_check-expected.txt:
- web-platform-tests/html/browsers/offline/manifest_url_check.https.https-expected.txt:
- web-platform-tests/html/browsers/origin/cross-origin-objects/cross-origin-objects-expected.txt:
- web-platform-tests/html/browsers/origin/origin-of-data-document-expected.txt:
- web-platform-tests/html/browsers/origin/relaxing-the-same-origin-restriction/document_domain_setter-expected.txt:
- web-platform-tests/html/browsers/sandboxing/sandbox-disallow-scripts-via-unsandboxed-popup.tentative-expected.txt:
- web-platform-tests/html/browsers/sandboxing/sandbox-new-execution-context-expected.txt:
- web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/no_window_open_when_term_nesting_level_nonzero.window-expected.txt:
- web-platform-tests/html/browsers/the-window-object/window-open-noopener-expected.txt:
- web-platform-tests/html/browsers/the-windowproxy-exotic-object/windowproxy-prototype-setting-same-origin-domain.sub-expected.txt:
- web-platform-tests/html/browsers/windows/nested-browsing-contexts/frameElement.sub-expected.txt:
- web-platform-tests/html/browsers/windows/targeting-cross-origin-nested-browsing-contexts-expected.txt:
- web-platform-tests/html/browsers/windows/targeting-cross-origin-nested-browsing-contexts.sub-expected.txt:
- web-platform-tests/html/dom/documents/dom-tree-accessors/Document.currentScript-expected.txt:
- web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/011-1-expected.txt:
- web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/012-1-expected.txt:
- web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/013-1-expected.txt:
- web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/014-1-expected.txt:
- web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/015-1-expected.txt:
- web-platform-tests/html/dom/dynamic-markup-insertion/opening-the-input-stream/document.open-03-frame-expected.txt:
- web-platform-tests/html/dom/interfaces-expected.txt:
- web-platform-tests/html/dom/reflection-embedded-expected.txt:
- web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/broadcastchannel-success.https-expected.txt:
- web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/nested-sharedworker-success.https-expected.txt:
- web-platform-tests/html/infrastructure/safe-passing-of-structured-data/shared-array-buffers/window-failure.https-expected.txt:
- web-platform-tests/html/infrastructure/safe-passing-of-structured-data/structured_clone_bigint-expected.txt:
- web-platform-tests/html/infrastructure/urls/resolving-urls/query-encoding/utf-16le-expected.txt:
- web-platform-tests/html/infrastructure/urls/resolving-urls/query-encoding/utf-8-expected.txt:
- web-platform-tests/html/infrastructure/urls/resolving-urls/query-encoding/windows-1251-expected.txt:
- web-platform-tests/html/infrastructure/urls/resolving-urls/query-encoding/windows-1252-expected.txt:
- web-platform-tests/html/rendering/non-replaced-elements/the-page/iframe-marginwidth-marginheight-expected.txt:
- web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-1-expected.txt:
- web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/allow-scripts-flag-changing-2-expected.txt:
- web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/not-in-shadow-tree-expected.txt:
- web-platform-tests/html/semantics/document-metadata/the-meta-element/pragma-directives/attr-meta-http-equiv-refresh/remove-from-document-expected.txt:
- web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt:
- web-platform-tests/html/semantics/embedded-content/media-elements/interfaces/TextTrack/language-expected.txt:
- web-platform-tests/html/semantics/embedded-content/media-elements/ready-states/autoplay-with-slow-text-tracks-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.canvas.redirect-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.drawImage.image.redirect-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.fillStyle.redirect-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.canvas.strokeStyle.redirect-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.cross.redirect-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.fillStyle.redirect-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.cross-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/security.pattern.image.strokeStyle.redirect-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-embed-element/document-getters-return-null-for-cross-origin-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-frame-element/document-getters-return-null-for-cross-origin-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/cross-origin-to-whom.window-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/document-getters-return-null-for-cross-origin-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-1-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-2-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation-3-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_allow_top_navigation_by_user_activation_without_user_gesture-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads.sub.tentative-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-1-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-2-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-3-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_block_modals-4-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigate_ancestor-1-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads.sub.tentative-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_popups_escaping-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/sandbox_011-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-iframe-element/sandbox_030-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-object-element/document-getters-return-null-for-cross-origin-expected.txt:
- web-platform-tests/html/semantics/forms/constraints/form-validation-validate-expected.txt:
- web-platform-tests/html/semantics/links/links-created-by-a-and-area-elements/htmlanchorelement_noopener-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/css-module/utf8.tentative-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/data-url-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/067-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/083-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/084-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/127-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/128-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/130-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/module-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/module.tentative-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/parse-error-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/parse-error.tentative-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/utf8-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/utf8.tentative-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/valid-content-type-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/valid-content-type.tentative-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-1-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/choice-of-error-3-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/compilation-error-1-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/compilation-error-2-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/credentials.sub-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/custom-element-exception-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/dynamic-imports-credentials.sub-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-classic-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/dynamic-import/string-compilation-nonce-module-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/error-and-slow-dependency-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/error-type-2-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/error-type-3-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-1-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-2-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-3-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/evaluation-error-4-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/inline-async-execorder-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/specifier-error-expected.txt:
- web-platform-tests/html/semantics/scripting-1/the-script-element/muted-errors.sub-expected.txt:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-003-expected.txt:
- web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-004-expected.txt:
- web-platform-tests/html/syntax/parsing/html5lib_tests1-expected.txt:
- web-platform-tests/html/syntax/parsing/html5lib_tests11-expected.txt:
- web-platform-tests/html/syntax/parsing/html5lib_tests18-expected.txt:
- web-platform-tests/html/syntax/parsing/html5lib_tests7-expected.txt:
- web-platform-tests/html/syntax/parsing/html5lib_webkit01-expected.txt:
- web-platform-tests/html/webappapis/animation-frames/callback-exception-expected.txt:
- web-platform-tests/html/webappapis/scripting/events/compile-event-handler-lexical-scopes-expected.txt:
- web-platform-tests/html/webappapis/scripting/events/event-handler-processing-algorithm-error/worker-expected.txt:
- web-platform-tests/html/webappapis/scripting/events/inline-event-handler-ordering-expected.txt:
- web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-compiled-late-expected.txt:
- web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-compiled-late.window-expected.txt:
- web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-compiled-once-expected.txt:
- web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-compiled-once.window-expected.txt:
- web-platform-tests/html/webappapis/scripting/events/invalid-uncompiled-raw-handler-keeps-position.window-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/addEventListener-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/body-onerror-compile-error-data-url-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/body-onerror-compile-error-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/body-onerror-runtime-error-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-data-url-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-attribute-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-body-onerror-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-setInterval-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-in-setTimeout-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-same-origin-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/compile-error-same-origin-with-hash-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-data-url-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-attribute-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-body-onerror-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-setInterval-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-setTimeout-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-in-window-onerror-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-same-origin-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/runtime-error-same-origin-with-hash-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/unhandled-promise-rejections/promise-rejection-events-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/unhandled-promise-rejections/promise-rejection-events-onerror-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/unhandled-promise-rejections/promise-rejection-events.sharedworker-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-parse-error-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-runtime-error-throw-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-with-cross-frame-event-listeners-1-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-with-cross-frame-event-listeners-2-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-with-cross-frame-event-listeners-3-expected.txt:
- web-platform-tests/html/webappapis/scripting/processing-model-2/window-onerror-with-cross-frame-event-listeners-4-expected.txt:
- web-platform-tests/html/webappapis/timers/negative-settimeout-expected.txt:
- web-platform-tests/mediacapture-streams/MediaStream-feature-policy-none.https-expected.txt:
- web-platform-tests/navigation-timing/nav2_test_document_open-expected.txt:
- web-platform-tests/navigation-timing/nav2_test_document_replaced-expected.txt:
- web-platform-tests/navigation-timing/nav2_test_navigate_within_document-expected.txt:
- web-platform-tests/navigation-timing/nav2_test_navigation_type_backforward-expected.txt:
- web-platform-tests/navigation-timing/nav2_test_navigation_type_reload-expected.txt:
- web-platform-tests/navigation-timing/nav2_test_redirect_chain_xserver_partial_opt_in-expected.txt:
- web-platform-tests/navigation-timing/nav2_test_redirect_server-expected.txt:
- web-platform-tests/navigation-timing/nav2_test_redirect_xserver-expected.txt:
- web-platform-tests/preload/link-header-preload-nonce-expected.txt:
- web-platform-tests/preload/onload-event-expected.txt:
- web-platform-tests/preload/preload-csp.sub-expected.txt:
- web-platform-tests/preload/preload-default-csp.sub-expected.txt:
- web-platform-tests/preload/single-download-preload-expected.txt:
- web-platform-tests/requestidlecallback/callback-exception-expected.txt:
- web-platform-tests/resource-timing/resource-timing-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_match_origin-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_match_wildcard-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_multi-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_multi_wildcard-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_null-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_origin-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_origin_uppercase-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_space-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_wildcard-expected.txt:
- web-platform-tests/resource-timing/resource_TAO_zero-expected.txt:
- web-platform-tests/streams/byte-length-queuing-strategy.sharedworker-expected.txt:
- web-platform-tests/streams/count-queuing-strategy.sharedworker-expected.txt:
- web-platform-tests/streams/piping/close-propagation-backward.sharedworker-expected.txt:
- web-platform-tests/streams/piping/close-propagation-forward.sharedworker-expected.txt:
- web-platform-tests/streams/piping/error-propagation-backward-expected.txt:
- web-platform-tests/streams/piping/error-propagation-backward.sharedworker-expected.txt:
- web-platform-tests/streams/piping/error-propagation-forward-expected.txt:
- web-platform-tests/streams/piping/error-propagation-forward.sharedworker-expected.txt:
- web-platform-tests/streams/piping/flow-control.sharedworker-expected.txt:
- web-platform-tests/streams/piping/general-expected.txt:
- web-platform-tests/streams/piping/general.sharedworker-expected.txt:
- web-platform-tests/streams/piping/multiple-propagation.sharedworker-expected.txt:
- web-platform-tests/streams/piping/pipe-through.sharedworker-expected.txt:
- web-platform-tests/streams/piping/transform-streams.sharedworker-expected.txt:
- web-platform-tests/streams/readable-byte-streams/brand-checks.sharedworker-expected.txt:
- web-platform-tests/streams/readable-byte-streams/detached-buffers.sharedworker-expected.txt:
- web-platform-tests/streams/readable-byte-streams/general.sharedworker-expected.txt:
- web-platform-tests/streams/readable-byte-streams/properties.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/bad-strategies.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/bad-underlying-sources.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/brand-checks.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/cancel.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/count-queuing-strategy-integration.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/default-reader.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/floating-point-total-queue-size.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/garbage-collection.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/general.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/readable-stream-reader.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/tee.sharedworker-expected.txt:
- web-platform-tests/streams/readable-streams/templated.sharedworker-expected.txt:
- web-platform-tests/svg/animations/scripted/onhover-syncbases-expected.txt:
- web-platform-tests/svg/interact/scripted/tabindex-focus-flag-expected.txt:
- web-platform-tests/svg/path/error-handling/bounding-expected.txt:
- web-platform-tests/svg/shapes/scripted/disabled-shapes-not-hit-expected.txt:
- web-platform-tests/url/a-element-expected.txt:
- web-platform-tests/url/a-element-origin-expected.txt:
- web-platform-tests/url/a-element-origin-xhtml-expected.txt:
- web-platform-tests/url/a-element-xhtml-expected.txt:
- web-platform-tests/url/failure-expected.txt:
- web-platform-tests/user-timing/test_user_timing_clear_marks-expected.txt:
- web-platform-tests/user-timing/test_user_timing_clear_measures-expected.txt:
- web-platform-tests/user-timing/test_user_timing_entry_type-expected.txt:
- web-platform-tests/user-timing/test_user_timing_exists-expected.txt:
- web-platform-tests/user-timing/test_user_timing_mark-expected.txt:
- web-platform-tests/user-timing/test_user_timing_mark_and_measure_exception_when_invoke_with_timing_attributes-expected.txt:
- web-platform-tests/user-timing/test_user_timing_mark_and_measure_exception_when_invoke_without_parameter-expected.txt:
- web-platform-tests/user-timing/test_user_timing_mark_exceptions-expected.txt:
- web-platform-tests/user-timing/test_user_timing_mark_with_name_of_navigation_timing_optional_attribute-expected.txt:
- web-platform-tests/user-timing/test_user_timing_measure-expected.txt:
- web-platform-tests/user-timing/test_user_timing_measure_exceptions-expected.txt:
- web-platform-tests/user-timing/test_user_timing_measure_navigation_timing-expected.txt:
- web-platform-tests/webaudio/idlharness.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-analysernode-interface/test-analyser-minimum-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioparam-interface/retrospective-exponentialRampToValueAtTime-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioparam-interface/retrospective-linearRampToValueAtTime-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioparam-interface/retrospective-setTargetAtTime-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioparam-interface/retrospective-setValueAtTime-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioparam-interface/retrospective-setValueCurveAtTime-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworklet-addmodule-resolution.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworklet-audioparam.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworklet-messageport.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-sample-rate.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-timing-info.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-channel-count.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-construction.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-constructor-options.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-disconnected-input.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletnode-onerror.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletprocessor-options.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/baseaudiocontext-audioworklet.https-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-channelmergernode-interface/audiochannelmerger-input-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-channelmergernode-interface/audiochannelmerger-input-non-default-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-channelsplitternode-interface/audiochannelsplitter-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-constantsourcenode-interface/constant-source-basic-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-constantsourcenode-interface/constant-source-onended-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-constantsourcenode-interface/constant-source-output-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-convolvernode-interface/convolution-mono-mono-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-convolvernode-interface/convolver-cascade-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-convolvernode-interface/convolver-response-1-chan-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-convolvernode-interface/convolver-response-2-chan-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-convolvernode-interface/convolver-response-4-chan-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-delaynode-interface/delaynode-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-delaynode-interface/delaynode-max-default-delay-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-delaynode-interface/delaynode-max-nondefault-delay-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-delaynode-interface/delaynode-maxdelay-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-delaynode-interface/delaynode-maxdelaylimit-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-delaynode-interface/delaynode-scheduling-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-delaynode-interface/no-dezippering-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-gainnode-interface/gain-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-gainnode-interface/no-dezippering-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-iirfilternode-interface/iirfilter-basic-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-iirfilternode-interface/iirfilter-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-iirfilternode-interface/iirfilter-getFrequencyResponse-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/distance-exponential-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/distance-inverse-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/distance-linear-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-automation-basic-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-automation-equalpower-stereo-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-automation-position-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-distance-clamping-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-equalpower-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-equalpower-stereo-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/panner-rolloff-clamping-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-pannernode-interface/pannernode-basic-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-stereopanner-interface/no-dezippering-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-stereopanner-interface/stereopannernode-basic-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-stereopanner-interface/stereopannernode-panning-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-waveshapernode-interface/waveshaper-copy-curve-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-waveshapernode-interface/waveshaper-expected.txt:
- web-platform-tests/webaudio/the-audio-api/the-waveshapernode-interface/waveshaper-limits-expected.txt:
- web-platform-tests/websockets/Create-blocked-port.any-expected.txt:
- web-platform-tests/workers/SharedWorker-detach-frame-in-error-event-expected.txt:
- web-platform-tests/workers/SharedWorker_dataUrl-expected.txt:
- web-platform-tests/workers/WorkerGlobalScope-close-expected.txt:
- web-platform-tests/workers/WorkerGlobalScope_ErrorEvent_colno-expected.txt:
- web-platform-tests/workers/WorkerGlobalScope_ErrorEvent_filename-expected.txt:
- web-platform-tests/workers/WorkerGlobalScope_ErrorEvent_message-expected.txt:
- web-platform-tests/workers/Worker_ErrorEvent_bubbles_cancelable-expected.txt:
- web-platform-tests/workers/Worker_ErrorEvent_error-expected.txt:
- web-platform-tests/workers/Worker_ErrorEvent_filename-expected.txt:
- web-platform-tests/workers/Worker_ErrorEvent_lineno-expected.txt:
- web-platform-tests/workers/Worker_ErrorEvent_message-expected.txt:
- web-platform-tests/workers/Worker_ErrorEvent_type-expected.txt:
- web-platform-tests/workers/baseurl/alpha/import-in-moduleworker-expected.txt:
- web-platform-tests/workers/baseurl/alpha/importScripts-in-sharedworker-expected.txt:
- web-platform-tests/workers/baseurl/alpha/sharedworker-expected.txt:
- web-platform-tests/workers/baseurl/alpha/sharedworker-in-worker-expected.txt:
- web-platform-tests/workers/baseurl/alpha/worker-expected.txt:
- web-platform-tests/workers/baseurl/alpha/worker-in-worker-expected.txt:
- web-platform-tests/workers/baseurl/alpha/xhr-in-sharedworker-expected.txt:
- web-platform-tests/workers/constructors/SharedWorker/URLMismatchError-expected.txt:
- web-platform-tests/workers/constructors/Worker/AbstractWorker.onerror-expected.txt:
- web-platform-tests/workers/data-url-shared-expected.txt:
- web-platform-tests/workers/interfaces/WorkerGlobalScope/location/redirect-sharedworker-expected.txt:
- web-platform-tests/workers/interfaces/WorkerGlobalScope/onerror/exception-in-onerror-expected.txt:
- web-platform-tests/workers/interfaces/WorkerUtils/importScripts/006-expected.txt:
- web-platform-tests/workers/modules/dedicated-worker-import-blob-url.any-expected.txt:
- web-platform-tests/workers/modules/dedicated-worker-import-failure-expected.txt:
- web-platform-tests/workers/modules/dedicated-worker-import-meta-expected.txt:
- web-platform-tests/workers/modules/dedicated-worker-import.any-expected.txt:
- web-platform-tests/workers/modules/dedicated-worker-options-credentials-expected.txt:
- web-platform-tests/workers/name-property-expected.txt:
- web-platform-tests/workers/semantics/multiple-workers/003-expected.txt:
- web-platform-tests/workers/semantics/multiple-workers/004-expected.txt:
- web-platform-tests/workers/semantics/multiple-workers/005-expected.txt:
- web-platform-tests/workers/semantics/multiple-workers/008-expected.txt:
- web-platform-tests/workers/semantics/structured-clone/shared-expected.txt:
- web-platform-tests/workers/shared-worker-name-via-options-expected.txt:
Tools:
- DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate webView:addMessageToConsole:withSource:]):
- DumpRenderTree/win/UIDelegate.cpp:
(UIDelegate::webViewAddMessageToConsole):
- WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
- WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::willAddMessageToConsole):
LayoutTests:
- animations/change-keyframes-expected.txt:
- compositing/geometry/negative-text-indent-with-overflow-hidden-layer-expected.txt:
- compositing/iframes/page-cache-layer-tree-expected.txt:
- css3/filters/backdrop/backdrop-filter-with-clip-path-expected.txt:
- css3/parse-alignment-of-root-elements-expected.txt:
- dom/xhtml/level2/html/HTMLFrameElement09-expected.txt:
- editing/execCommand/indent-pre-expected.txt:
- editing/execCommand/outdent-blockquote-test1-expected.txt:
- editing/execCommand/outdent-blockquote-test2-expected.txt:
- editing/execCommand/outdent-blockquote-test3-expected.txt:
- editing/execCommand/outdent-blockquote-test4-expected.txt:
- editing/inserting/insert-br-quoted-007-expected.txt:
- editing/pasteboard/copy-paste-float-expected.txt:
- editing/pasteboard/datatransfer-idl-expected.txt:
- editing/pasteboard/datatransfer-items-copy-html-expected.txt:
- editing/pasteboard/onpaste-text-html-expected.txt:
- editing/pasteboard/paste-blockquote-before-blockquote-expected.txt:
- editing/pasteboard/paste-double-nested-blockquote-before-blockquote-expected.txt:
- fast/animation/request-animation-frame-prefix-expected.txt:
- fast/canvas/canvas-context-save-limit-expected.txt:
- fast/canvas/canvas-getImageData-invalid-result-buffer-crash-expected.txt:
- fast/canvas/canvas-toDataURL-crash-expected.txt:
- fast/canvas/canvas-too-large-to-draw-expected.txt:
- fast/canvas/check-stale-putImageData-expected.txt:
- fast/canvas/pattern-too-large-to-create-expected.txt:
- fast/canvas/webgl/bufferData-nullable-array-buffer-view-expected.txt:
- fast/canvas/webgl/largeBuffer-expected.txt:
- fast/canvas/webgl/lose-context-on-status-failure-expected.txt:
- fast/canvas/webgl/oes-texture-float-linear-expected.txt:
- fast/canvas/webgl/shader-compile-logging-expected.txt:
- fast/canvas/webgl/simulated-vertexAttrib0-invalid-indicies-expected.txt:
- fast/canvas/webgl/vertexAttribPointer-with-bad-offset-expected.txt:
- fast/canvas/webgl/webgl-debug-renderer-info-expected.txt:
- fast/canvas/webgl/webgl-draw-buffers-expected.txt:
- fast/canvas/webgl/webgl2-buffer-targets-expected.txt:
- fast/canvas/webgl/webgl2-getActiveUniforms-expected.txt:
- fast/css/parse-border-image-repeat-null-crash-expected.txt:
- fast/custom-elements/exceptions-for-synchronous-custom-element-creation-expected.txt:
- fast/device-orientation/device-motion-request-permission-denied-expected.txt:
- fast/device-orientation/device-motion-request-permission-granted-expected.txt:
- fast/device-orientation/device-motion-request-permission-user-gesture-expected.txt:
- fast/device-orientation/device-orientation-request-permission-denied-expected.txt:
- fast/device-orientation/device-orientation-request-permission-granted-expected.txt:
- fast/device-orientation/device-orientation-request-permission-user-gesture-expected.txt:
- fast/dom/DOMURL/searchparams-expected.txt:
- fast/dom/Geolocation/callback-exception-expected.txt:
- fast/dom/Geolocation/notimer-after-unload-expected.txt:
- fast/dom/HTMLAnchorElement/anchor-file-blob-download-then-revoke-expected.txt:
- fast/dom/HTMLSelectElement/select-selectedIndex-expected.txt:
- fast/dom/HTMLSelectElement/select-selectedIndex-multiple-expected.txt:
- fast/dom/MutationObserver/database-callback-delivery-expected.txt:
- fast/dom/NamedNodeMap-setNamedItem-crash-expected.txt:
- fast/dom/Window/a-rel-noopener-expected.txt:
- fast/dom/Window/area-rel-noopener-expected.txt:
- fast/dom/Window/console-functions-expected.txt:
- fast/dom/Window/slow-unload-handler-expected.txt:
- fast/dom/Window/slow-unload-handler-only-frame-is-stopped-expected.txt:
- fast/dom/Window/window-custom-prototype-crash-expected.txt:
- fast/dom/Window/window-open-self-disallow-close-expected.txt:
- fast/dom/Window/window-resize-contents-expected.txt:
- fast/dom/add-document-child-and-reparent-old-child-during-document-child-replacement-expected.txt:
- fast/dom/add-document-child-during-document-child-replacement-expected.txt:
- fast/dom/attribute-event-listener-errors-expected.txt:
- fast/dom/error-to-string-stack-overflow-expected.txt:
- fast/dom/event-attrs-isolated-world-expected.txt:
- fast/dom/getSVGDocument-on-object-crash-expected.txt:
- fast/dom/insertedIntoDocument-iframe-expected.txt:
- fast/dom/javascript-url-exception-isolation-expected.txt:
- fast/dom/microtask-detach-expected.txt:
- fast/dom/microtask-inorder-expected.txt:
- fast/dom/microtask-reverse-expected.txt:
- fast/dom/nested-script-exceptions-expected.txt:
- fast/dom/no-assert-for-malformed-js-url-attribute-expected.txt:
- fast/dom/regress-131530-expected.txt:
- fast/dom/timer-clear-interval-in-handler-and-generate-error-expected.txt:
- fast/dom/title-text-property-2-expected.txt:
- fast/dom/xmlhttprequest-constructor-in-detached-document-expected.txt:
- fast/encoding/meta-in-script-expected.txt:
- fast/encoding/utf-8-non-ascii-expected.txt:
- fast/events/attribute-listener-deletion-crash-expected.txt:
- fast/events/beforeunload-alert-expected.txt:
- fast/events/beforeunload-confirm-expected.txt:
- fast/events/beforeunload-prompt-expected.txt:
- fast/events/beforeunload-showModalDialog-expected.txt:
- fast/events/detached-svg-parent-window-events-expected.txt:
- fast/events/onbeforeunload-focused-iframe-expected.txt:
- fast/events/ondrop-text-html-expected.txt:
- fast/events/onerror-no-constructor-expected.txt:
- fast/events/onunload-clears-onbeforeunload-expected.txt:
- fast/events/onunload-expected.txt:
- fast/events/onunload-not-on-body-expected.txt:
- fast/events/onunload-window-property-expected.txt:
- fast/events/pagehide-alert-expected.txt:
- fast/events/pagehide-confirm-expected.txt:
- fast/events/pagehide-prompt-expected.txt:
- fast/events/pagehide-showModalDialog-expected.txt:
- fast/events/pagehide-timeout-expected.txt:
- fast/events/pagehide-xhr-open-expected.txt:
- fast/events/pageshow-pagehide-on-back-cached-expected.txt:
- fast/events/pageshow-pagehide-on-back-cached-with-frames-expected.txt:
- fast/events/pageshow-pagehide-on-back-uncached-expected.txt:
- fast/events/popup-blocked-from-sandboxed-frame-via-window-open-named-sibling-frame-expected.txt:
- fast/events/popup-blocked-from-sandboxed-frame-via-window-open-named-sibling-frame2-expected.txt:
- fast/events/popup-blocked-from-unique-frame-via-window-open-named-sibling-frame-expected.txt:
- fast/events/remove-target-with-shadow-in-drag-expected.txt:
- fast/events/set-attribute-listener-window-onerror-crash-expected.txt:
- fast/events/suspend-timers-expected.txt:
- fast/events/unload-alert-expected.txt:
- fast/events/unload-confirm-expected.txt:
- fast/events/unload-prompt-expected.txt:
- fast/events/unload-showModalDialog-expected.txt:
- fast/events/window-onerror13-expected.txt:
- fast/events/window-onerror16-expected.txt:
- fast/events/window-onerror7-expected.txt:
- fast/files/file-reader-file-url-expected.txt:
- fast/files/file-reader-sandbox-iframe-expected.txt:
- fast/files/null-origin-string-expected.txt:
- fast/forms/interactive-validation-prevented-expected.txt:
- fast/forms/range/range-remove-on-drag-expected.txt:
- fast/forms/registerFormElement-crash-expected.txt:
- fast/forms/select-max-length-expected.txt:
- fast/forms/state-restore-broken-state-expected.txt:
- fast/forms/state-restore-skip-stateless-expected.txt:
- fast/frames/frame-focus-blurs-active-element-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-01-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-02-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-03-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-04-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-05-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-06-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-07-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-08-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-09-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-10-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-11-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-12-expected.txt:
- fast/frames/sandboxed-iframe-attribute-parsing-13-expected.txt:
- fast/frames/sandboxed-iframe-autofocus-denied-expected.txt:
- fast/frames/sandboxed-iframe-close-top-noclose-expected.txt:
- fast/frames/sandboxed-iframe-forms-dynamic-expected.txt:
- fast/frames/sandboxed-iframe-forms-expected.txt:
- fast/frames/sandboxed-iframe-history-denied-expected.txt:
- fast/frames/sandboxed-iframe-navigation-targetlink-expected.txt:
- fast/frames/sandboxed-iframe-navigation-top-by-name-denied-expected.txt:
- fast/frames/sandboxed-iframe-navigation-windowopen-expected.txt:
- fast/frames/sandboxed-iframe-parsing-space-characters-expected.txt:
- fast/frames/sandboxed-iframe-storage-expected.txt:
- fast/frames/xss-auditor-handles-file-urls-expected.txt:
- fast/history/page-cache-webdatabase-no-transaction-db-expected.txt:
- fast/history/page-cache-webdatabase-pending-transaction-expected.txt:
- fast/history/timed-refresh-in-cached-frame-expected.txt:
- fast/html/details-summary-document-child-expected.txt:
- fast/html/link-element-removal-during-beforeload-expected.txt:
- fast/inspector-support/uncaught-dom1-exception-expected.txt:
- fast/inspector-support/uncaught-dom3-exception-expected.txt:
- fast/inspector-support/uncaught-dom8-exception-expected.txt:
- fast/loader/cache-encoding-expected.txt:
- fast/loader/frames-with-unload-handlers-in-page-cache-expected.txt:
- fast/loader/input-element-page-cache-crash-expected.txt:
- fast/loader/page-dismissal-modal-dialogs-expected.txt:
- fast/media/mq-resolution-dpi-dpcm-warning-expected.txt:
- fast/mediacapturefromelement/CanvasCaptureMediaStream-framerate-0-expected.txt:
- fast/mediacapturefromelement/CanvasCaptureMediaStream-webgl-events-expected.txt:
- fast/mediastream/captureStream/canvas3d-expected.txt:
- fast/parser/changing-attrbutes-crash-expected.txt:
- fast/parser/entity-end-script-tag-expected.txt:
- fast/parser/nested-fragment-parser-crash-expected.txt:
- fast/preloader/iframe-srcdoc-expected.txt:
- fast/scrolling/ios/overflow-div-scrolling-expected.txt:
- fast/scrolling/scroll-animator-basic-events-expected.txt:
- fast/scrolling/scroll-animator-overlay-scrollbars-clicked-expected.txt:
- fast/scrolling/scroll-animator-overlay-scrollbars-hovered-expected.txt:
- fast/scrolling/scroll-animator-select-list-events-expected.txt:
- fast/storage/storage-detached-iframe-expected.txt:
- fast/text/font-face-set-remove-safely-expected.txt:
- fast/text/font-promises-gc-expected.txt:
- fast/text/text-combine-crash-expected.txt:
- fast/url/relative-expected.txt:
- fast/url/segments-from-data-url-expected.txt:
- fast/viewport/viewport-104-expected.txt:
- fast/viewport/viewport-105-expected.txt:
- fast/viewport/viewport-106-expected.txt:
- fast/viewport/viewport-107-expected.txt:
- fast/viewport/viewport-108-expected.txt:
- fast/viewport/viewport-109-expected.txt:
- fast/viewport/viewport-110-expected.txt:
- fast/viewport/viewport-111-expected.txt:
- fast/viewport/viewport-112-expected.txt:
- fast/viewport/viewport-113-expected.txt:
- fast/viewport/viewport-114-expected.txt:
- fast/viewport/viewport-118-expected.txt:
- fast/viewport/viewport-121-expected.txt:
- fast/viewport/viewport-122-expected.txt:
- fast/viewport/viewport-125-expected.txt:
- fast/viewport/viewport-126-expected.txt:
- fast/viewport/viewport-127-expected.txt:
- fast/viewport/viewport-129-expected.txt:
- fast/viewport/viewport-133-expected.txt:
- fast/viewport/viewport-134-expected.txt:
- fast/viewport/viewport-46-expected.txt:
- fast/viewport/viewport-52-expected.txt:
- fast/viewport/viewport-53-expected.txt:
- fast/viewport/viewport-54-expected.txt:
- fast/viewport/viewport-55-expected.txt:
- fast/viewport/viewport-65-expected.txt:
- fast/viewport/viewport-66-expected.txt:
- fast/viewport/viewport-67-expected.txt:
- fast/viewport/viewport-68-expected.txt:
- fast/viewport/viewport-69-expected.txt:
- fast/viewport/viewport-70-expected.txt:
- fast/viewport/viewport-71-expected.txt:
- fast/viewport/viewport-72-expected.txt:
- fast/viewport/viewport-73-expected.txt:
- fast/viewport/viewport-74-expected.txt:
- fast/viewport/viewport-75-expected.txt:
- fast/viewport/viewport-77-expected.txt:
- fast/viewport/viewport-78-expected.txt:
- fast/viewport/viewport-79-expected.txt:
- fast/viewport/viewport-82-expected.txt:
- fast/viewport/viewport-83-expected.txt:
- fast/viewport/viewport-84-expected.txt:
- fast/viewport/viewport-87-expected.txt:
- fast/viewport/viewport-88-expected.txt:
- fast/viewport/viewport-warnings-2-expected.txt:
- fast/viewport/viewport-warnings-3-expected.txt:
- fast/viewport/viewport-warnings-4-expected.txt:
- fast/viewport/viewport-warnings-5-expected.txt:
- fast/viewport/viewport-warnings-6-expected.txt:
- fast/viewport/viewport-warnings-7-expected.txt:
- fast/workers/worker-crash-with-invalid-location-expected.txt:
- fast/workers/worker-exception-during-navigation-expected.txt:
- fast/workers/worker-script-error-expected.txt:
- fast/workers/worker-terminate-forever-expected.txt:
- fast/xmlhttprequest/set-dangerous-headers-expected.txt:
- fast/xmlhttprequest/xmlhttprequest-multiple-sync-xhr-during-unload-expected.txt:
- fast/xmlhttprequest/xmlhttprequest-no-file-access-expected.txt:
- fast/xmlhttprequest/xmlhttprequest-nonexistent-file-expected.txt:
- fast/xmlhttprequest/xmlhttprequest-recursive-sync-event-expected.txt:
- fast/xmlhttprequest/xmlhttprequest-responsetype-before-open-sync-request-expected.txt:
- fast/xmlhttprequest/xmlhttprequest-responsetype-sync-request-expected.txt:
- fast/xmlhttprequest/xmlhttprequest-sync-xhr-failure-loop-during-unload-expected.txt:
- fast/xpath/nsresolver-bad-object-expected.txt:
- fast/xpath/nsresolver-exception-expected.txt:
- fast/xsl/transform-xhr-doc-expected.txt:
- fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt:
- fetch/fetch-error-messages-expected.txt:
- fetch/fetch-url-serialization-expected.txt:
- fullscreen/full-screen-enabled-expected.txt:
- fullscreen/full-screen-enabled-prefixed-expected.txt:
- fullscreen/full-screen-iframe-without-allow-attribute-allowed-from-parent-expected.txt:
- fullscreen/requestFullscreen-escape-key-expected.txt:
- html5lib/generated/run-tests1-data-expected.txt:
- html5lib/generated/run-tests1-write-expected.txt:
- html5lib/generated/run-tests11-data-expected.txt:
- html5lib/generated/run-tests11-write-expected.txt:
- html5lib/generated/run-tests18-data-expected.txt:
- html5lib/generated/run-tests18-write-expected.txt:
- html5lib/generated/run-tests7-data-expected.txt:
- html5lib/generated/run-tests7-write-expected.txt:
- html5lib/generated/run-webkit01-data-expected.txt:
- html5lib/generated/run-webkit01-write-expected.txt:
- html5lib/webkit-resumer-expected.txt:
- http/tests/adClickAttribution/anchor-tag-attributes-validation-expected.txt:
- http/tests/appcache/404-manifest-expected.txt:
- http/tests/appcache/404-resource-expected.txt:
- http/tests/appcache/abort-cache-onchecking-expected.txt:
- http/tests/appcache/abort-cache-onchecking-manifest-404-expected.txt:
- http/tests/appcache/abort-cache-onchecking-resource-404-expected.txt:
- http/tests/appcache/abort-cache-ondownloading-expected.txt:
- http/tests/appcache/abort-cache-ondownloading-manifest-404-expected.txt:
- http/tests/appcache/abort-cache-ondownloading-resource-404-expected.txt:
- http/tests/appcache/abort-cache-onprogress-expected.txt:
- http/tests/appcache/access-via-redirect-expected.txt:
- http/tests/appcache/appcache-cookies-expected.txt:
- http/tests/appcache/auth-expected.txt:
- http/tests/appcache/crash-when-navigating-away-then-back-expected.txt:
- http/tests/appcache/credential-url-expected.txt:
- http/tests/appcache/cyrillic-uri-expected.txt:
- http/tests/appcache/decide-navigation-policy-after-delay-expected.txt:
- http/tests/appcache/deferred-events-expected.txt:
- http/tests/appcache/different-https-origin-resource-main-expected.txt:
- http/tests/appcache/different-origin-manifest-expected.txt:
- http/tests/appcache/different-scheme-expected.txt:
- http/tests/appcache/document-cookie-expected.txt:
- http/tests/appcache/document-cookie-http-only-expected.txt:
- http/tests/appcache/document-write-html-element-2-expected.txt:
- http/tests/appcache/empty-manifest-expected.txt:
- http/tests/appcache/fallback-expected.txt:
- http/tests/appcache/fallback-namespace-outside-manifest-path-expected.txt:
- http/tests/appcache/foreign-fallback-expected.txt:
- http/tests/appcache/foreign-iframe-main-expected.txt:
- http/tests/appcache/history-test-expected.txt:
- http/tests/appcache/idempotent-update-expected.txt:
- http/tests/appcache/identifier-test-expected.txt:
- http/tests/appcache/interrupted-update-expected.txt:
- http/tests/appcache/load-from-appcache-defer-resume-crash-expected.txt:
- http/tests/appcache/local-content-expected.txt:
- http/tests/appcache/main-resource-fallback-for-network-error-crash-expected.txt:
- http/tests/appcache/main-resource-hash-expected.txt:
- http/tests/appcache/main-resource-redirect-expected.txt:
- http/tests/appcache/main-resource-redirect-with-sw-expected.txt:
- http/tests/appcache/manifest-containing-itself-expected.txt:
- http/tests/appcache/manifest-parsing-expected.txt:
- http/tests/appcache/manifest-redirect-2-expected.txt:
- http/tests/appcache/manifest-redirect-expected.txt:
- http/tests/appcache/manifest-with-empty-file-expected.txt:
- http/tests/appcache/max-size-expected.txt:
- http/tests/appcache/multi-fallback-expected.txt:
- http/tests/appcache/navigating-away-while-cache-attempt-in-progress-expected.txt:
- http/tests/appcache/non-html-expected.txt:
- http/tests/appcache/offline-access-expected.txt:
- http/tests/appcache/online-fallback-layering-expected.txt:
- http/tests/appcache/online-whitelist-expected.txt:
- http/tests/appcache/origin-delete-expected.txt:
- http/tests/appcache/origin-quota-continued-download-expected.txt:
- http/tests/appcache/origin-quota-continued-download-multiple-manifests-expected.txt:
- http/tests/appcache/origin-quota-expected.txt:
- http/tests/appcache/origin-usage-expected.txt:
- http/tests/appcache/origins-with-appcache-expected.txt:
- http/tests/appcache/progress-counter-expected.txt:
- http/tests/appcache/reload-expected.txt:
- http/tests/appcache/resource-redirect-2-expected.txt:
- http/tests/appcache/resource-redirect-expected.txt:
- http/tests/appcache/simple-expected.txt:
- http/tests/appcache/simple-video-async-expected.txt:
- http/tests/appcache/simple-video-sync-expected.txt:
- http/tests/appcache/top-frame-1-expected.txt:
- http/tests/appcache/top-frame-2-expected.txt:
- http/tests/appcache/top-frame-3-expected.txt:
- http/tests/appcache/top-frame-4-expected.txt:
- http/tests/appcache/update-cache-expected.txt:
- http/tests/appcache/video-expected.txt:
- http/tests/appcache/whitelist-wildcard-expected.txt:
- http/tests/appcache/wrong-content-type-expected.txt:
- http/tests/appcache/wrong-signature-2-expected.txt:
- http/tests/appcache/wrong-signature-expected.txt:
- http/tests/appcache/x-frame-options-prevents-framing-expected.txt:
- http/tests/appcache/xhr-foreign-resource-expected.txt:
- http/tests/blink/sendbeacon/beacon-cross-origin.https-expected.txt:
- http/tests/cache/partitioned-cache-expected.txt:
- http/tests/cache/partitioned-cache-iframe-expected.txt:
- http/tests/cache/preload-cleared-after-parsing-canceled-by-js-expected.txt:
- http/tests/canvas/canvas-tainted-after-draw-image-expected.txt:
- http/tests/canvas/philip/tests/security.drawImage.canvas-expected.txt:
- http/tests/canvas/philip/tests/security.drawImage.image-expected.txt:
- http/tests/canvas/philip/tests/security.pattern.canvas.fillStyle-expected.txt:
- http/tests/canvas/philip/tests/security.pattern.canvas.strokeStyle-expected.txt:
- http/tests/canvas/philip/tests/security.pattern.cross-expected.txt:
- http/tests/canvas/philip/tests/security.pattern.image.fillStyle-expected.txt:
- http/tests/canvas/philip/tests/security.pattern.image.strokeStyle-expected.txt:
- http/tests/contentdispositionattachmentsandbox/at-import-stylesheets-disabled-expected.txt:
- http/tests/contentdispositionattachmentsandbox/cross-origin-frames-disabled-expected.txt:
- http/tests/contentdispositionattachmentsandbox/external-stylesheets-disabled-expected.txt:
- http/tests/contentdispositionattachmentsandbox/form-submission-disabled-expected.txt:
- http/tests/contentdispositionattachmentsandbox/http-equiv-disabled-expected.txt:
- http/tests/contentdispositionattachmentsandbox/xml-stylesheet-processing-instructions-disabled-expected.txt:
- http/tests/contentextensions/async-xhr-onerror-expected.txt:
- http/tests/contentextensions/basic-filter-expected.txt:
- http/tests/contentextensions/block-csp-report-expected.txt:
- http/tests/contentextensions/block-everything-unless-domain-expected.txt:
- http/tests/contentextensions/block-everything-unless-domain-iframe-expected.txt:
- http/tests/contentextensions/block-image-load-in-onunload-expected.txt:
- http/tests/contentextensions/block-ping-expected.txt:
- http/tests/contentextensions/block-ping-resource-type-ping-expected.txt:
- http/tests/contentextensions/block-ping-resource-type-raw-expected.txt:
- http/tests/contentextensions/character-set-basic-support-expected.txt:
- http/tests/contentextensions/domain-rules-expected.txt:
- http/tests/contentextensions/filters-with-quantifiers-combined-expected.txt:
- http/tests/contentextensions/make-https-expected.txt:
- http/tests/contentextensions/media-filtered-expected.txt:
- http/tests/contentextensions/popups-expected.txt:
- http/tests/contentextensions/prefetch-blocked-expected.txt:
- http/tests/contentextensions/script-onerror-expected.txt:
- http/tests/contentextensions/service-worker.https-expected.txt:
- http/tests/contentextensions/sync-xhr-blocked-expected.txt:
- http/tests/contentextensions/sync-xhr-redirection-blocked-expected.txt:
- http/tests/contentextensions/text-track-blocked-expected.txt:
- http/tests/contentextensions/top-url-expected.txt:
- http/tests/contentextensions/video-element-resource-type-expected.txt:
- http/tests/contentfiltering/load-substitute-data-from-appcache-expected.txt:
- http/tests/css/shared-stylesheet-mutation-expected.txt:
- http/tests/css/shared-stylesheet-mutation-preconstruct-expected.txt:
- http/tests/dom/new-window-can-target-opener-expected.txt:
- http/tests/dom/noopener-window-cannot-target-opener-expected.txt:
- http/tests/dom/set-document-location-host-to-accepted-values-expected.txt:
- http/tests/dom/set-document-location-hostname-to-accepted-values-expected.txt:
- http/tests/dom/window-open-about-blank-and-access-document-expected.txt:
- http/tests/dom/window-open-about-uppercase-blank-and-access-document-expected.txt:
- http/tests/events/device-orientation-motion-non-secure-context-expected.txt:
- http/tests/events/device-orientation-motion-secure-context-expected.txt:
- http/tests/fetch/fetch-in-worker-crash-expected.txt:
- http/tests/fullscreen/fullscreen-feature-policy-expected.txt:
- http/tests/history/back-during-onload-triggered-by-back-expected.txt:
- http/tests/history/back-with-fragment-change-expected.txt:
- http/tests/history/cross-origin-replace-history-object-child-expected.txt:
- http/tests/history/cross-origin-replace-history-object-expected.txt:
- http/tests/inspector/dom/cross-domain-inspected-node-access-expected.txt:
- http/tests/inspector/network/contentextensions/blocked-websocket-crash-expected.txt:
- http/tests/inspector/network/fetch-network-data-expected.txt:
- http/tests/media/media-stream/disconnected-frame-already-expected.txt:
- http/tests/media/media-stream/enumerate-devices-iframe-allow-attribute-expected.txt:
- http/tests/misc/bubble-drag-events-expected.txt:
- http/tests/misc/drag-over-iframe-invalid-source-crash-expected.txt:
- http/tests/misc/iframe-invalid-source-crash-expected.txt:
- http/tests/misc/image-blocked-src-change-expected.txt:
- http/tests/misc/image-blocked-src-no-change-expected.txt:
- http/tests/misc/unloadable-script-expected.txt:
- http/tests/navigation/anchor-blank-target-implies-rel-noopener-expected.txt:
- http/tests/navigation/forward-to-fragment-fires-onload-expected.txt:
- http/tests/navigation/keyboard-events-during-provisional-navigation-expected.txt:
- http/tests/navigation/keyboard-events-during-provisional-subframe-navigation-expected.txt:
- http/tests/navigation/navigation-interrupted-by-fragment-expected.txt:
- http/tests/navigation/no-referrer-reset-expected.txt:
- http/tests/navigation/no-referrer-subframe-expected.txt:
- http/tests/navigation/no-referrer-target-blank-expected.txt:
- http/tests/navigation/page-cache-xhr-in-pagehide-expected.txt:
- http/tests/navigation/subframe-pagehide-handler-starts-load-expected.txt:
- http/tests/navigation/subframe-pagehide-handler-starts-load2-expected.txt:
- http/tests/navigation/target-blank-opener-expected.txt:
- http/tests/navigation/target-blank-opener-post-expected.txt:
- http/tests/performance/performance-resource-timing-cached-entries-expected.txt:
- http/tests/plugins/cross-frame-object-access-expected.txt:
- http/tests/plugins/plugin-document-has-focus-expected.txt:
- http/tests/pointer-lock/iframe-sandboxed-expected.txt:
- http/tests/pointer-lock/iframe-sandboxed-nested-disallow-then-allow-pointer-lock-expected.txt:
- http/tests/preload/download_resources-expected.txt:
- http/tests/preload/dynamic_remove_preload_href-expected.txt:
- http/tests/preload/onerror_event-expected.txt:
- http/tests/preload/onload_event-expected.txt:
- http/tests/preload/preload-encoding-expected.txt:
- http/tests/preload/single_download_preload-expected.txt:
- http/tests/quicklook/at-import-stylesheet-blocked-expected.txt:
- http/tests/quicklook/base-url-blocked-expected.txt:
- http/tests/quicklook/cross-origin-iframe-blocked-expected.txt:
- http/tests/quicklook/csp-header-ignored-expected.txt:
- http/tests/quicklook/document-domain-is-empty-string-expected.txt:
- http/tests/quicklook/external-stylesheet-blocked-expected.txt:
- http/tests/quicklook/hide-referer-on-navigation-expected.txt:
- http/tests/quicklook/same-origin-xmlhttprequest-allowed-expected.txt:
- http/tests/quicklook/submit-form-blocked-expected.txt:
- http/tests/quicklook/top-navigation-blocked-expected.txt:
- http/tests/referrer-policy-img/no-referrer/cross-origin-http.https-expected.txt:
- http/tests/referrer-policy-img/origin-when-cross-origin/cross-origin-http.https-expected.txt:
- http/tests/referrer-policy-img/origin/cross-origin-http.https-expected.txt:
- http/tests/referrer-policy-img/same-origin/cross-origin-http.https-expected.txt:
- http/tests/referrer-policy-img/strict-origin-when-cross-origin/cross-origin-http.https-expected.txt:
- http/tests/referrer-policy-img/strict-origin/cross-origin-http.https-expected.txt:
- http/tests/resourceLoadStatistics/cookie-deletion-expected.txt:
- http/tests/security/XFrameOptions/x-frame-options-ancestors-same-origin-deny-expected.txt:
- http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
- http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-expected.txt:
- http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-in-body-expected.txt:
- http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-allow-expected.txt:
- http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny-expected.txt:
- http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt:
- http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
- http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt:
- http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt:
- http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
- http/tests/security/allowed-base-url-data-url-via-setting-expected.txt:
- http/tests/security/anchor-download-block-crossorigin-expected.txt:
- http/tests/security/appcache-switching-private-browsing-expected.txt:
- http/tests/security/beforeload-iframe-client-redirect-expected.txt:
- http/tests/security/beforeload-iframe-server-redirect-expected.txt:
- http/tests/security/blob-null-url-location-origin-expected.txt:
- http/tests/security/block-top-level-navigations-by-third-party-iframes-expected.txt:
- http/tests/security/bypassing-cors-checks-for-extension-urls-expected.txt:
- http/tests/security/canvas-remote-read-data-url-image-redirect-expected.txt:
- http/tests/security/canvas-remote-read-redirect-to-remote-image-expected.txt:
- http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin-expected.txt:
- http/tests/security/canvas-remote-read-remote-image-blocked-then-allowed-expected.txt:
- http/tests/security/canvas-remote-read-remote-image-expected.txt:
- http/tests/security/canvas-remote-read-remote-image-redirect-expected.txt:
- http/tests/security/canvas-remote-read-remote-video-blocked-no-crossorigin-expected.txt:
- http/tests/security/canvas-remote-read-remote-video-hls-expected.txt:
- http/tests/security/canvas-remote-read-remote-video-localhost-expected.txt:
- http/tests/security/canvas-remote-read-remote-video-redirect-expected.txt:
- http/tests/security/clipboard/copy-paste-html-cross-origin-iframe-across-origin-expected.txt:
- http/tests/security/clipboard/copy-paste-html-cross-origin-iframe-in-same-origin-expected.txt:
- http/tests/security/clipboard/drag-drop-html-cross-origin-iframe-in-same-origin-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/child-src/frame-about-blank-allowed-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/child-src/frame-allowed-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/import-scriptnonce-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-and-scripthash-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-basic-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-ignore-unsafeinline-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-in-enforced-policy-and-not-in-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-multiple-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-redirect-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-basic-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-ignore-unsafeinline-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-in-enforced-policy-and-not-in-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-multiple-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-tests-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-and-scripthash-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-basic-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-ignore-unsafeinline-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-in-enforced-policy-and-not-in-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-multiple-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-error-event-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/stylehash-basic-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/stylehash-svg-style-basic-blocked-error-event-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/stylenonce-allowed-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/stylenonce-basic-blocked-error-event-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/stylenonce-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/stylenonce-svg-style-basic-blocked-error-event-expected.txt:
- http/tests/security/contentSecurityPolicy/WebAssembly-allowed-expected.txt:
- http/tests/security/contentSecurityPolicy/WebAssembly-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/WebAssembly-blocked-in-about-blank-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/WebAssembly-blocked-in-external-script-expected.txt:
- http/tests/security/contentSecurityPolicy/WebAssembly-blocked-in-subframe-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-inherited-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-xslt-document-in-iframe-with-inherited-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-main-frame-expected.txt:
- http/tests/security/contentSecurityPolicy/cached-frame-csp-expected.txt:
- http/tests/security/contentSecurityPolicy/combine-multiple-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/default-src-inline-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-expected.txt:
- http/tests/security/contentSecurityPolicy/eval-blocked-and-sends-report-expected.txt:
- http/tests/security/contentSecurityPolicy/eval-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/eval-blocked-in-about-blank-iframe-expected.txt:
- http/tests/security/contentSecurityPolicy/eval-blocked-in-external-script-expected.txt:
- http/tests/security/contentSecurityPolicy/eval-blocked-in-subframe-expected.txt:
- http/tests/security/contentSecurityPolicy/eval-scripts-setInterval-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/eval-scripts-setTimeout-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/function-constructor-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/injected-inline-style-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/inline-event-handler-blocked-after-injecting-meta-expected.txt:
- http/tests/security/contentSecurityPolicy/inline-script-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/inline-script-blocked-goofy-expected.txt:
- http/tests/security/contentSecurityPolicy/inline-script-blocked-javascript-url-expected.txt:
- http/tests/security/contentSecurityPolicy/inline-style-allowed-while-cloning-objects-expected.txt:
- http/tests/security/contentSecurityPolicy/inline-style-attribute-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/inline-style-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/javascript-url-blocked-by-default-src-star-expected.txt:
- http/tests/security/contentSecurityPolicy/javascript-url-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/module-eval-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/module-eval-blocked-in-external-script-expected.txt:
- http/tests/security/contentSecurityPolicy/navigate-self-to-blob-expected.txt:
- http/tests/security/contentSecurityPolicy/navigate-self-to-data-url-expected.txt:
- http/tests/security/contentSecurityPolicy/register-bypassing-scheme-partial-expected.txt:
- http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt:
- http/tests/security/contentSecurityPolicy/report-multiple-violations-01-expected.txt:
- http/tests/security/contentSecurityPolicy/report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt:
- http/tests/security/contentSecurityPolicy/report-only-upgrade-insecure-expected.txt:
- http/tests/security/contentSecurityPolicy/report-status-code-zero-when-using-https-expected.txt:
- http/tests/security/contentSecurityPolicy/report-uri-expected.txt:
- http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt:
- http/tests/security/contentSecurityPolicy/report-uri-scheme-relative-expected.txt:
- http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header-expected.txt:
- http/tests/security/contentSecurityPolicy/sandbox-in-http-header-expected.txt:
- http/tests/security/contentSecurityPolicy/script-src-none-inline-event-expected.txt:
- http/tests/security/contentSecurityPolicy/srcdoc-doesnt-bypass-script-src-expected.txt:
- http/tests/security/contentSecurityPolicy/style-src-blocked-error-event-expected.txt:
- http/tests/security/contentSecurityPolicy/subframe-with-data-url-inheritance-expected.txt:
- http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/basic-upgrade-cors.https-expected.txt:
- http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/iframe-upgrade.https-expected.txt:
- http/tests/security/contentSecurityPolicy/window-open-javascript-url-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/window-open-javascript-url-with-target-blocked-expected.txt:
- http/tests/security/contentTypeOptions/invalid-content-type-options-allowed-expected.txt:
- http/tests/security/contentTypeOptions/nosniff-script-allowed-expected.txt:
- http/tests/security/contentTypeOptions/nosniff-xml-external-entity-expected.txt:
- http/tests/security/cross-frame-access-callback-explicit-domain-DENY-expected.txt:
- http/tests/security/cross-frame-access-child-explicit-domain-expected.txt:
- http/tests/security/cross-frame-access-custom-expected.txt:
- http/tests/security/cross-frame-access-frameelement-expected.txt:
- http/tests/security/cross-frame-access-get-expected.txt:
- http/tests/security/cross-frame-access-getOwnPropertyDescriptor-expected.txt:
- http/tests/security/cross-frame-access-history-get-expected.txt:
- http/tests/security/cross-frame-access-history-get-override-expected.txt:
- http/tests/security/cross-frame-access-history-prototype-expected.txt:
- http/tests/security/cross-frame-access-location-get-expected.txt:
- http/tests/security/cross-frame-access-location-get-override-expected.txt:
- http/tests/security/cross-frame-access-name-getter-expected.txt:
- http/tests/security/cross-frame-access-parent-explicit-domain-expected.txt:
- http/tests/security/cross-frame-access-port-expected.txt:
- http/tests/security/cross-frame-access-protocol-expected.txt:
- http/tests/security/cross-frame-access-protocol-explicit-domain-expected.txt:
- http/tests/security/cross-frame-access-put-expected.txt:
- http/tests/security/cross-origin-appcache-allowed-expected.txt:
- http/tests/security/cross-origin-appcache-expected.txt:
- http/tests/security/cross-origin-cached-images-canvas-expected.txt:
- http/tests/security/cross-origin-iframe-contentDocument-expected.txt:
- http/tests/security/cross-origin-modal-dialog-base-expected.txt:
- http/tests/security/cross-origin-script-error-event-expected.txt:
- http/tests/security/cross-origin-script-error-event-redirected-expected.txt:
- http/tests/security/cross-origin-websql-allowed-expected.txt:
- http/tests/security/cross-origin-websql-expected.txt:
- http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
- http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-subframe-expected.txt:
- http/tests/security/dataURL/xss-DENIED-from-data-url-in-foreign-domain-window-open-expected.txt:
- http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
- http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt:
- http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt:
- http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt:
- http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-window-open-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt:
- http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt:
- http/tests/security/denied-base-url-data-url-expected.txt:
- http/tests/security/denied-base-url-javascript-url-expected.txt:
- http/tests/security/document-all-expected.txt:
- http/tests/security/drag-drop-local-file-expected.txt:
- http/tests/security/frameNavigation/not-opener-expected.txt:
- http/tests/security/frameNavigation/sandbox-DENIED-top-navigation-with-user-gesture-expected.txt:
- http/tests/security/frameNavigation/xss-DENIED-targeted-link-navigation-expected.txt:
- http/tests/security/insecure-geolocation-expected.txt:
- http/tests/security/isolatedWorld/image-load-should-not-bypass-main-world-csp-expected.txt:
- http/tests/security/isolatedWorld/onclick-attribute-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-frame-location-htmldom-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-getAttribute-value-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-htmldom-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttribute-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNS-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNode-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-frame-src-setAttributeNodeNS-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-getAttribute-value-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-htmldom-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttribute-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNS-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNode-expected.txt:
- http/tests/security/javascriptURL/javascriptURL-execution-context-iframe-src-setAttributeNodeNS-expected.txt:
- http/tests/security/javascriptURL/xss-DENIED-from-javascript-url-in-foreign-domain-subframe-expected.txt:
- http/tests/security/javascriptURL/xss-DENIED-from-javascript-url-in-foreign-domain-window-open-expected.txt:
- http/tests/security/javascriptURL/xss-DENIED-to-javascript-url-in-foreign-domain-subframe-expected.txt:
- http/tests/security/javascriptURL/xss-DENIED-to-javascript-url-in-foreign-domain-window-open-expected.txt:
- http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt:
- http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt:
- http/tests/security/listener/xss-XMLHttpRequest-addEventListener-expected.txt:
- http/tests/security/listener/xss-XMLHttpRequest-shortcut-expected.txt:
- http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt:
- http/tests/security/listener/xss-window-onclick-shortcut-expected.txt:
- http/tests/security/local-CSS-from-remote-expected.txt:
- http/tests/security/local-JavaScript-from-remote-expected.txt:
- http/tests/security/local-iFrame-from-remote-expected.txt:
- http/tests/security/local-image-from-remote-expected.txt:
- http/tests/security/local-video-poster-from-remote-expected.txt:
- http/tests/security/mixedContent/import-insecure-script-in-iframe-expected.txt:
- http/tests/security/mixedContent/insecure-basic-auth-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- http/tests/security/mixedContent/insecure-basic-auth-image.https-expected.txt:
- http/tests/security/mixedContent/insecure-css-in-iframe-expected.txt:
- http/tests/security/mixedContent/insecure-css-in-main-frame-expected.txt:
- http/tests/security/mixedContent/insecure-css-with-secure-cookies-expected.txt:
- http/tests/security/mixedContent/insecure-executable-css-with-secure-cookies-expected.txt:
- http/tests/security/mixedContent/insecure-form-in-main-frame-expected.txt:
- http/tests/security/mixedContent/insecure-image-in-main-frame-expected.txt:
- http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials-expected.txt:
- http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image-expected.txt:
- http/tests/security/mixedContent/insecure-image-with-securecookie-block-expected.txt:
- http/tests/security/mixedContent/insecure-image-with-securecookie-expected.txt:
- http/tests/security/mixedContent/insecure-plugin-in-iframe-expected.txt:
- http/tests/security/mixedContent/insecure-script-with-secure-cookies-expected.txt:
- http/tests/security/mixedContent/insecure-stylesheet-redirects-to-basic-auth-secure-stylesheet-expected.txt:
- http/tests/security/mixedContent/insecure-xhr-in-main-frame-expected.txt:
- http/tests/security/mixedContent/insecure-xhr-sync-in-main-frame-expected.txt:
- http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-block-expected.txt:
- http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-expected.txt:
- http/tests/security/mixedContent/websocket/insecure-websocket-in-iframe-expected.txt:
- http/tests/security/mixedContent/websocket/insecure-websocket-in-main-frame-expected.txt:
- http/tests/security/mixedcontent-geolocation-block-insecure-content-expected.txt:
- http/tests/security/mixedcontent-geolocation-expected.txt:
- http/tests/security/module-correct-mime-types-expected.txt:
- http/tests/security/module-crossorigin-error-event-information-expected.txt:
- http/tests/security/module-crossorigin-onerror-information-expected.txt:
- http/tests/security/module-no-mime-type-expected.txt:
- http/tests/security/no-javascript-refresh-static-expected.txt:
- http/tests/security/no-javascript-refresh-static-spaces-expected.txt:
- http/tests/security/no-popup-from-sandbox-expected.txt:
- http/tests/security/no-popup-from-sandbox-top-expected.txt:
- http/tests/security/originHeader/origin-header-for-https-expected.txt:
- http/tests/security/popup-allowed-by-sandbox-is-sandboxed-expected.txt:
- http/tests/security/referrer-policy-invalid-expected.txt:
- http/tests/security/regress-52192-expected.txt:
- http/tests/security/same-origin-appcache-blocked-expected.txt:
- http/tests/security/same-origin-websql-blocked-expected.txt:
- http/tests/security/sandbox-inherit-to-initial-document-2-expected.txt:
- http/tests/security/sandboxed-iframe-DENIED-modals-expected.txt:
- http/tests/security/sandboxed-iframe-blocks-access-from-parent-expected.txt:
- http/tests/security/sandboxed-iframe-form-top-expected.txt:
- http/tests/security/sandboxed-iframe-invalid-expected.txt:
- http/tests/security/sandboxed-iframe-modify-self-expected.txt:
- http/tests/security/sandboxed-iframe-origin-add-expected.txt:
- http/tests/security/sandboxed-iframe-origin-remove-expected.txt:
- http/tests/security/script-crossorigin-error-event-information-expected.txt:
- http/tests/security/script-crossorigin-onerror-information-expected.txt:
- http/tests/security/script-no-crossorigin-error-event-should-be-sanitized-expected.txt:
- http/tests/security/script-no-crossorigin-onerror-should-be-sanitized-expected.txt:
- http/tests/security/script-with-dataurl-expected.txt:
- http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt:
- http/tests/security/storage-blocking-loosened-websql-expected.txt:
- http/tests/security/storage-blocking-strengthened-websql-expected.txt:
- http/tests/security/top-level-unique-origin2.https-expected.txt:
- http/tests/security/window-name-after-cross-origin-aux-frame-navigation-expected.txt:
- http/tests/security/window-name-after-cross-origin-main-frame-navigation-expected.txt:
- http/tests/security/window-name-after-cross-origin-sub-frame-navigation-expected.txt:
- http/tests/security/window-name-after-same-origin-aux-frame-navigation-expected.txt:
- http/tests/security/window-name-after-same-origin-main-frame-navigation-expected.txt:
- http/tests/security/window-name-after-same-origin-sub-frame-navigation-expected.txt:
- http/tests/security/window-named-proto-expected.txt:
- http/tests/security/window-named-valueOf-expected.txt:
- http/tests/security/window-onerror-exception-in-iframe-expected.txt:
- http/tests/security/xss-DENIED-assign-location-hash-expected.txt:
- http/tests/security/xss-DENIED-assign-location-host-expected.txt:
- http/tests/security/xss-DENIED-assign-location-hostname-expected.txt:
- http/tests/security/xss-DENIED-assign-location-href-javascript-expected.txt:
- http/tests/security/xss-DENIED-assign-location-nonstandardProperty-expected.txt:
- http/tests/security/xss-DENIED-assign-location-pathname-expected.txt:
- http/tests/security/xss-DENIED-assign-location-protocol-expected.txt:
- http/tests/security/xss-DENIED-assign-location-reload-expected.txt:
- http/tests/security/xss-DENIED-assign-location-search-expected.txt:
- http/tests/security/xss-DENIED-frame-name-expected.txt:
- http/tests/security/xss-DENIED-getSVGDocument-iframe-expected.txt:
- http/tests/security/xss-DENIED-getSVGDocument-object-expected.txt:
- http/tests/security/xss-DENIED-iframe-src-alias-expected.txt:
- http/tests/security/xss-DENIED-invalid-domain-change-expected.txt:
- http/tests/security/xss-DENIED-javascript-with-spaces-expected.txt:
- http/tests/security/xss-DENIED-method-with-iframe-proto-expected.txt:
- http/tests/security/xss-DENIED-sandboxed-iframe-expected.txt:
- http/tests/security/xss-DENIED-synchronous-form-expected.txt:
- http/tests/security/xss-DENIED-synchronous-frame-load-in-javascript-url-expected.txt:
- http/tests/security/xss-DENIED-window-index-assign-expected.txt:
- http/tests/security/xss-DENIED-window-name-navigator-expected.txt:
- http/tests/security/xss-DENIED-window-open-javascript-url-expected.txt:
- http/tests/security/xss-DENIED-window-open-javascript-url-with-spaces-expected.txt:
- http/tests/security/xss-DENIED-window-open-parent-expected.txt:
- http/tests/security/xss-DENIED-xml-external-entity-expected.txt:
- http/tests/security/xss-DENIED-xsl-document-securityOrigin-expected.txt:
- http/tests/security/xssAuditor/anchor-url-dom-write-location-expected.txt:
- http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-expected.txt:
- http/tests/security/xssAuditor/anchor-url-dom-write-location-inline-event-null-char-expected.txt:
- http/tests/security/xssAuditor/anchor-url-dom-write-location-javascript-URL-expected.txt:
- http/tests/security/xssAuditor/anchor-url-dom-write-location2-expected.txt:
- http/tests/security/xssAuditor/base-href-control-char-expected.txt:
- http/tests/security/xssAuditor/base-href-expected.txt:
- http/tests/security/xssAuditor/base-href-null-char-expected.txt:
- http/tests/security/xssAuditor/base-href-scheme-relative-expected.txt:
- http/tests/security/xssAuditor/block-does-not-leak-location-expected.txt:
- http/tests/security/xssAuditor/block-does-not-leak-referrer-expected.txt:
- http/tests/security/xssAuditor/block-does-not-leak-that-page-was-blocked-using-empty-data-url-expected.txt:
- http/tests/security/xssAuditor/cached-frame-expected.txt:
- http/tests/security/xssAuditor/cookie-injection-expected.txt:
- http/tests/security/xssAuditor/dom-write-URL-expected.txt:
- http/tests/security/xssAuditor/dom-write-location-dom-write-open-img-onerror-expected.txt:
- http/tests/security/xssAuditor/dom-write-location-expected.txt:
- http/tests/security/xssAuditor/dom-write-location-inline-event-expected.txt:
- http/tests/security/xssAuditor/dom-write-location-javascript-URL-expected.txt:
- http/tests/security/xssAuditor/dom-write-location-open-img-onerror-expected.txt:
- http/tests/security/xssAuditor/embed-tag-code-attribute-2-expected.txt:
- http/tests/security/xssAuditor/embed-tag-code-attribute-expected.txt:
- http/tests/security/xssAuditor/embed-tag-control-char-expected.txt:
- http/tests/security/xssAuditor/embed-tag-expected.txt:
- http/tests/security/xssAuditor/embed-tag-in-path-unterminated-expected.txt:
- http/tests/security/xssAuditor/embed-tag-javascript-url-expected.txt:
- http/tests/security/xssAuditor/embed-tag-null-char-expected.txt:
- http/tests/security/xssAuditor/form-action-expected.txt:
- http/tests/security/xssAuditor/formaction-on-button-expected.txt:
- http/tests/security/xssAuditor/formaction-on-input-expected.txt:
- http/tests/security/xssAuditor/frameset-injection-expected.txt:
- http/tests/security/xssAuditor/full-block-base-href-expected.txt:
- http/tests/security/xssAuditor/full-block-get-from-iframe-expected.txt:
- http/tests/security/xssAuditor/full-block-iframe-javascript-url-expected.txt:
- http/tests/security/xssAuditor/full-block-iframe-no-inherit-expected.txt:
- http/tests/security/xssAuditor/full-block-javascript-link-expected.txt:
- http/tests/security/xssAuditor/full-block-link-onclick-expected.txt:
- http/tests/security/xssAuditor/full-block-object-tag-expected.txt:
- http/tests/security/xssAuditor/full-block-post-from-iframe-expected.txt:
- http/tests/security/xssAuditor/full-block-script-tag-cross-domain-expected.txt:
- http/tests/security/xssAuditor/full-block-script-tag-expected.txt:
- http/tests/security/xssAuditor/full-block-script-tag-with-source-expected.txt:
- http/tests/security/xssAuditor/get-from-iframe-expected.txt:
- http/tests/security/xssAuditor/iframe-injection-expected.txt:
- http/tests/security/xssAuditor/iframe-javascript-url-expected.txt:
- http/tests/security/xssAuditor/iframe-javascript-url-more-encoding-expected.txt:
- http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode-expected.txt:
- http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode2-expected.txt:
- http/tests/security/xssAuditor/iframe-javascript-url-twice-url-encode3-expected.txt:
- http/tests/security/xssAuditor/iframe-javascript-url-url-encoded-expected.txt:
- http/tests/security/xssAuditor/iframe-onload-GBK-char-expected.txt:
- http/tests/security/xssAuditor/iframe-onload-in-svg-tag-expected.txt:
- http/tests/security/xssAuditor/iframe-srcdoc-expected.txt:
- http/tests/security/xssAuditor/iframe-srcdoc-property-blocked-expected.txt:
- http/tests/security/xssAuditor/img-onerror-GBK-char-expected.txt:
- http/tests/security/xssAuditor/img-onerror-accented-char-expected.txt:
- http/tests/security/xssAuditor/img-onerror-non-ASCII-char-default-encoding-expected.txt:
- http/tests/security/xssAuditor/img-onerror-non-ASCII-char-expected.txt:
- http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-default-encoding-expected.txt:
- http/tests/security/xssAuditor/img-onerror-non-ASCII-char2-expected.txt:
- http/tests/security/xssAuditor/img-tag-with-comma-expected.txt:
- http/tests/security/xssAuditor/inline-event-HTML-entities-expected.txt:
- http/tests/security/xssAuditor/javascript-link-HTML-entities-control-char-expected.txt:
- http/tests/security/xssAuditor/javascript-link-HTML-entities-expected.txt:
- http/tests/security/xssAuditor/javascript-link-HTML-entities-named-expected.txt:
- http/tests/security/xssAuditor/javascript-link-HTML-entities-null-char-expected.txt:
- http/tests/security/xssAuditor/javascript-link-ampersand-expected.txt:
- http/tests/security/xssAuditor/javascript-link-control-char-expected.txt:
- http/tests/security/xssAuditor/javascript-link-control-char2-expected.txt:
- http/tests/security/xssAuditor/javascript-link-expected.txt:
- http/tests/security/xssAuditor/javascript-link-null-char-expected.txt:
- http/tests/security/xssAuditor/javascript-link-one-plus-one-expected.txt:
- http/tests/security/xssAuditor/javascript-link-url-encoded-expected.txt:
- http/tests/security/xssAuditor/link-onclick-ampersand-expected.txt:
- http/tests/security/xssAuditor/link-onclick-control-char-expected.txt:
- http/tests/security/xssAuditor/link-onclick-entities-expected.txt:
- http/tests/security/xssAuditor/link-onclick-expected.txt:
- http/tests/security/xssAuditor/link-onclick-null-char-expected.txt:
- http/tests/security/xssAuditor/link-opens-new-window-expected.txt:
- http/tests/security/xssAuditor/malformed-HTML-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-1-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-2-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-3-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-4-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-5-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-6-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-7-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-8-expected.txt:
- http/tests/security/xssAuditor/malformed-xss-protection-header-9-expected.txt:
- http/tests/security/xssAuditor/meta-tag-http-refresh-javascript-url-expected.txt:
- http/tests/security/xssAuditor/meta-tag-http-refresh-x-frame-options-ignored-expected.txt:
- http/tests/security/xssAuditor/nested-dom-write-location-open-img-onerror-expected.txt:
- http/tests/security/xssAuditor/object-embed-tag-control-char-expected.txt:
- http/tests/security/xssAuditor/object-embed-tag-expected.txt:
- http/tests/security/xssAuditor/object-embed-tag-null-char-expected.txt:
- http/tests/security/xssAuditor/object-tag-expected.txt:
- http/tests/security/xssAuditor/object-tag-javascript-url-expected.txt:
- http/tests/security/xssAuditor/open-attribute-body-expected.txt:
- http/tests/security/xssAuditor/open-event-handler-iframe-expected.txt:
- http/tests/security/xssAuditor/open-iframe-src-01-expected.txt:
- http/tests/security/xssAuditor/open-iframe-src-02-expected.txt:
- http/tests/security/xssAuditor/open-iframe-src-03-expected.txt:
- http/tests/security/xssAuditor/open-script-src-01-expected.txt:
- http/tests/security/xssAuditor/open-script-src-02-expected.txt:
- http/tests/security/xssAuditor/open-script-src-03-expected.txt:
- http/tests/security/xssAuditor/open-script-src-04-expected.txt:
- http/tests/security/xssAuditor/post-from-iframe-expected.txt:
- http/tests/security/xssAuditor/property-escape-comment-01-expected.txt:
- http/tests/security/xssAuditor/property-escape-comment-02-expected.txt:
- http/tests/security/xssAuditor/property-escape-comment-03-expected.txt:
- http/tests/security/xssAuditor/property-escape-entity-01-expected.txt:
- http/tests/security/xssAuditor/property-escape-entity-02-expected.txt:
- http/tests/security/xssAuditor/property-escape-entity-03-expected.txt:
- http/tests/security/xssAuditor/property-escape-expected.txt:
- http/tests/security/xssAuditor/property-escape-long-expected.txt:
- http/tests/security/xssAuditor/property-escape-quote-01-expected.txt:
- http/tests/security/xssAuditor/property-escape-quote-02-expected.txt:
- http/tests/security/xssAuditor/property-escape-quote-03-expected.txt:
- http/tests/security/xssAuditor/reflection-in-path-expected.txt:
- http/tests/security/xssAuditor/regress-167121-expected.txt:
- http/tests/security/xssAuditor/report-script-tag-and-do-not-follow-redirect-when-sending-report-expected.txt:
- http/tests/security/xssAuditor/report-script-tag-expected.txt:
- http/tests/security/xssAuditor/report-script-tag-full-block-and-do-not-follow-redirect-when-sending-report-expected.txt:
- http/tests/security/xssAuditor/report-script-tag-full-block-expected.txt:
- http/tests/security/xssAuditor/report-script-tag-replace-state-expected.txt:
- http/tests/security/xssAuditor/script-tag-Big5-char-expected.txt:
- http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode-expected.txt:
- http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-expected.txt:
- http/tests/security/xssAuditor/script-tag-Big5-char2-expected.txt:
- http/tests/security/xssAuditor/script-tag-addslashes-backslash-expected.txt:
- http/tests/security/xssAuditor/script-tag-addslashes-double-quote-expected.txt:
- http/tests/security/xssAuditor/script-tag-addslashes-null-char-expected.txt:
- http/tests/security/xssAuditor/script-tag-addslashes-single-quote-expected.txt:
- http/tests/security/xssAuditor/script-tag-control-char-expected.txt:
- http/tests/security/xssAuditor/script-tag-convoluted-expected.txt:
- http/tests/security/xssAuditor/script-tag-entities-expected.txt:
- http/tests/security/xssAuditor/script-tag-expected.txt:
- http/tests/security/xssAuditor/script-tag-expression-follows-expected.txt:
- http/tests/security/xssAuditor/script-tag-inside-svg-tag-expected.txt:
- http/tests/security/xssAuditor/script-tag-inside-svg-tag2-expected.txt:
- http/tests/security/xssAuditor/script-tag-inside-svg-tag3-expected.txt:
- http/tests/security/xssAuditor/script-tag-near-start-expected.txt:
- http/tests/security/xssAuditor/script-tag-null-char-expected.txt:
- http/tests/security/xssAuditor/script-tag-post-control-char-expected.txt:
- http/tests/security/xssAuditor/script-tag-post-expected.txt:
- http/tests/security/xssAuditor/script-tag-post-null-char-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-16bit-unicode-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-16bit-unicode-surrogate-pair-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-16bit-unicode2-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-16bit-unicode3-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-16bit-unicode4-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-16bit-unicode5-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-actual-comma-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-callbacks-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-comma-01-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-comma-02-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-fancy-unicode-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-injected-comment-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-invalid-closing-tag-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-invalid-url-encoding-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-control-char-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-data-url-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-data-url2-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-data-url3-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-data-url4-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-data-url5-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-double-quote-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-entities-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-no-quote-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-null-char-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-relative-scheme-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-same-host-with-query-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-unterminated-01-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-unterminated-02-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-source-unterminated-03-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-three-times-url-encoded-16bit-unicode-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-trailing-comment-U2028-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-trailing-comment-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-trailing-comment2-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-trailing-comment3-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-trailing-comment4-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-trailing-comment5-expected.txt:
- http/tests/security/xssAuditor/script-tag-with-trailing-script-and-urlencode-expected.txt:
- http/tests/security/xssAuditor/svg-animate-expected.txt:
- http/tests/security/xssAuditor/svg-script-tag-expected.txt:
- http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt:
- http/tests/security/xssAuditor/xss-filter-bypass-long-string-expected.txt:
- http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt:
- http/tests/security/xssAuditor/xss-protection-parsing-01-expected.txt:
- http/tests/security/xssAuditor/xss-protection-parsing-02-expected.txt:
- http/tests/security/xssAuditor/xss-protection-parsing-03-expected.txt:
- http/tests/security/xssAuditor/xss-protection-parsing-04-expected.txt:
- http/tests/ssl/media-stream/get-user-media-different-host-expected.txt:
- http/tests/ssl/media-stream/get-user-media-nested-expected.txt:
- http/tests/ssl/mixedContent/insecure-websocket-expected.txt:
- http/tests/ssl/upgrade-origin-usage-expected.txt:
- http/tests/storage/callbacks-are-called-in-correct-context-expected.txt:
- http/tests/storage/setItem-and-reload-expected.txt:
- http/tests/subresource-integrity/sri-enabled-with-setting-expected.txt:
- http/tests/webrtc/enumerateDevicesInFrames-expected.txt:
- http/tests/websocket/tests/hybi/bad-sub-protocol-control-chars-expected.txt:
- http/tests/websocket/tests/hybi/bad-sub-protocol-empty-expected.txt:
- http/tests/websocket/tests/hybi/bad-sub-protocol-non-ascii-expected.txt:
- http/tests/websocket/tests/hybi/binary-type-expected.txt:
- http/tests/websocket/tests/hybi/close-before-open-expected.txt:
- http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt:
- http/tests/websocket/tests/hybi/close-expected.txt:
- http/tests/websocket/tests/hybi/close-reason-too-long-expected.txt:
- http/tests/websocket/tests/hybi/contentextensions/block-expected.txt:
- http/tests/websocket/tests/hybi/contentextensions/block-worker-expected.txt:
- http/tests/websocket/tests/hybi/contentextensions/display-none-expected.txt:
- http/tests/websocket/tests/hybi/contentextensions/display-none-worker-expected.txt:
- http/tests/websocket/tests/hybi/contentextensions/upgrade-expected.txt:
- http/tests/websocket/tests/hybi/contentextensions/upgrade-worker-expected.txt:
- http/tests/websocket/tests/hybi/invalid-subprotocol-characters-expected.txt:
- http/tests/websocket/tests/hybi/invalid-subprotocols-expected.txt:
- http/tests/websocket/tests/hybi/url-parsing-expected.txt:
- http/tests/websocket/tests/hybi/websocket-constructor-protocols-expected.txt:
- http/tests/websocket/tests/hybi/websocket-event-target-expected.txt:
- http/tests/workers/location-readonly-expected.txt:
- http/tests/workers/navigator-readonly-expected.txt:
- http/tests/workers/self-readonly-expected.txt:
- http/tests/workers/service/basic-register-exceptions-expected.txt:
- http/tests/workers/worker-importScriptsOnError-expected.txt:
- http/tests/xmlhttprequest/access-control-and-redirects-expected.txt:
- http/tests/xmlhttprequest/access-control-basic-denied-expected.txt:
- http/tests/xmlhttprequest/access-control-basic-get-fail-non-simple-expected.txt:
- http/tests/xmlhttprequest/access-control-basic-non-simple-deny-cached-expected.txt:
- http/tests/xmlhttprequest/access-control-basic-post-fail-non-simple-content-type-expected.txt:
- http/tests/xmlhttprequest/access-control-preflight-not-successful-expected.txt:
- http/tests/xmlhttprequest/access-control-preflight-sync-header-denied-expected.txt:
- http/tests/xmlhttprequest/access-control-preflight-sync-method-denied-expected.txt:
- http/tests/xmlhttprequest/access-control-preflight-sync-not-supported-expected.txt:
- http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-expected.txt:
- http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-without-wildcard-expected.txt:
- http/tests/xmlhttprequest/cross-origin-no-authorization-expected.txt:
- http/tests/xmlhttprequest/cross-site-denied-response-sync-2-expected.txt:
- http/tests/xmlhttprequest/cross-site-denied-response-sync-expected.txt:
- http/tests/xmlhttprequest/navigation-should-abort-expected.txt:
- http/tests/xmlhttprequest/origin-exact-matching-expected.txt:
- http/tests/xmlhttprequest/origin-whitelisting-https-expected.txt:
- http/tests/xmlhttprequest/origin-whitelisting-ip-addresses-with-subdomains-expected.txt:
- http/tests/xmlhttprequest/origin-whitelisting-removal-expected.txt:
- http/tests/xmlhttprequest/post-blob-content-type-sync-expected.txt:
- http/tests/xmlhttprequest/redirect-cross-origin-post-sync-expected.txt:
- http/tests/xmlhttprequest/redirect-cross-origin-sync-expected.txt:
- http/tests/xmlhttprequest/redirect-cross-origin-tripmine-expected.txt:
- http/tests/xmlhttprequest/reentrant-cancel-expected.txt:
- http/tests/xmlhttprequest/set-dangerous-headers-expected.txt:
- http/tests/xmlhttprequest/simple-cross-origin-denied-events-post-sync-expected.txt:
- http/tests/xmlhttprequest/simple-cross-origin-denied-events-sync-expected.txt:
- http/tests/xmlhttprequest/sync-xhr-in-beforeunload-expected.txt:
- http/tests/xmlhttprequest/xmlhttprequest-sync-no-progress-events-expected.txt:
- http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect-expected.txt:
- http/wpt/beacon/beacon-quota-expected.txt:
- http/wpt/beacon/contentextensions/beacon-blocked-expected.txt:
- http/wpt/fetch/request-abort-expected.txt:
- imported/blink/fast/dom/HTMLImageElement/image-src-onerror-expected.txt:
- imported/blink/fast/dom/HTMLImageElement/image-srcset-w-onerror-expected.txt:
- imported/blink/fast/events/event-isolated-world-clone-expected.txt:
- imported/blink/fast/events/init-custom-event-isolated-world-expected.txt:
- imported/blink/fast/events/init-message-event-isolated-world-expected.txt:
- imported/blink/fast/forms/select/select-validation-assertion-expected.txt:
- inspector/console/command-line-api-expected.txt:
- inspector/console/console-api-expected.txt:
- inspector/console/console-log-proxy-expected.txt:
- inspector/console/console-message-expected.txt:
- inspector/console/console-table-expected.txt:
- inspector/console/js-source-locations-expected.txt:
- inspector/console/message-stack-trace-expected.txt:
- inspector/console/messageAdded-from-named-evaluations-expected.txt:
- inspector/console/messageRepeatCountUpdated-expected.txt:
- inspector/console/x-frame-options-message-expected.txt:
- inspector/controller/runtime-controller-expected.txt:
- inspector/controller/runtime-controller-import-expected.txt:
- inspector/debugger/break-in-constructor-before-super-expected.txt:
- inspector/debugger/break-on-exception-expected.txt:
- inspector/debugger/break-on-exception-throw-in-promise-expected.txt:
- inspector/debugger/break-on-uncaught-exception-expected.txt:
- inspector/debugger/break-on-uncaught-exception-throw-in-promise-expected.txt:
- inspector/debugger/breakpoint-action-log-expected.txt:
- inspector/debugger/breakpoint-action-with-exception-expected.txt:
- inspector/debugger/breakpoint-columns-expected.txt:
- inspector/debugger/breakpoint-condition-with-bad-script-expected.txt:
- inspector/debugger/breakpoint-condition-with-exception-expected.txt:
- inspector/debugger/breakpoint-scope-expected.txt:
- inspector/debugger/breakpoint-syntax-error-top-level-expected.txt:
- inspector/debugger/breakpoints-disabled-expected.txt:
- inspector/debugger/breakpoints/resolved-dump-all-inline-script-pause-locations-expected.txt:
- inspector/debugger/command-line-api-exception-expected.txt:
- inspector/debugger/command-line-api-exception-nested-catch-expected.txt:
- inspector/debugger/csp-exceptions-expected.txt:
- inspector/debugger/nested-inspectors-expected.txt:
- inspector/debugger/no-pause-out-of-memory-exception-expected.txt:
- inspector/debugger/no-pause-stack-overflow-exception-expected.txt:
- inspector/debugger/pause-for-internal-scripts-expected.txt:
- inspector/debugger/pause-on-assert-expected.txt:
- inspector/debugger/pause-reason-expected.txt:
- inspector/debugger/regress-133182-expected.txt:
- inspector/debugger/setBreakpoint-actions-expected.txt:
- inspector/debugger/setBreakpoint-options-exception-expected.txt:
- inspector/debugger/setPauseOnAssertions-expected.txt:
- inspector/debugger/setPauseOnExceptions-all-expected.txt:
- inspector/debugger/setPauseOnExceptions-none-expected.txt:
- inspector/debugger/setPauseOnExceptions-uncaught-expected.txt:
- inspector/debugger/stepping/stepping-internal-scripts-expected.txt:
- inspector/dom/customElementState-expected.txt:
- inspector/indexeddb/clearObjectStore-expected.txt:
- inspector/indexeddb/deleteDatabaseNamesWithSpace-expected.txt:
- inspector/indexeddb/requestData-expected.txt:
- inspector/indexeddb/requestDatabase-expected.txt:
- inspector/indexeddb/requestDatabaseNames-expected.txt:
- inspector/injected-script/avoid-getter-invocation-expected.txt:
- inspector/injected-script/observable-expected.txt:
- inspector/model/frame-extra-scripts-expected.txt:
- inspector/model/scope-chain-node-expected.txt:
- inspector/page/media-query-list-listener-exception-expected.txt:
- inspector/runtime/CommandLineAPI-inspect-expected.txt:
- inspector/runtime/promise-native-getter-expected.txt:
- inspector/script-profiler/event-type-API-expected.txt:
- inspector/script-profiler/event-type-Microtask-expected.txt:
- inspector/script-profiler/event-type-Other-expected.txt:
- inspector/timeline/setInstruments-programmatic-capture-expected.txt:
- inspector/worker/debugger-pause-expected.txt:
- js/console-expected.txt:
- js/dom/callback-function-with-handle-event-expected.txt:
- js/dom/concat-large-strings-crash-expected.txt:
- js/dom/concat-large-strings-crash2-expected.txt:
- js/dom/console-non-string-values-expected.txt:
- js/dom/exceptions-thrown-in-callbacks-expected.txt:
- js/dom/global-recursion-on-full-stack-expected.txt:
- js/dom/invalid-syntax-for-function-expected.txt:
- js/dom/native-bindings-descriptors-expected.txt:
- js/dom/parse-error-external-script-in-eval-expected.txt:
- js/dom/parse-error-external-script-in-new-Function-expected.txt:
- js/dom/parse-syntax-error-in-initializer-expected.txt:
- js/dom/uncaught-exception-line-number-expected.txt:
- js/kde/garbage-n-expected.txt:
- js/kde/string-1-n-expected.txt:
- js/kde/string-2-n-expected.txt:
- js/promises-tests/promises-tests-2-2-6-expected.txt:
- js/sequence-iterator-protocol-2-expected.txt:
- js/sequence-iterator-protocol-expected.txt:
- loader/meta-refresh-disabled-expected.txt:
- loader/reload-subresource-when-type-changes-expected.txt:
- media/media-source/only-bcp47-language-tags-accepted-as-valid-expected.txt:
- media/track/track-bcp-language-expected.txt:
- media/track/track-long-word-container-sizing-expected.txt:
- media/video-controls-no-scripting-expected.txt:
- pageoverlay/overlay-small-frame-mouse-events-expected.txt:
- performance-api/performance-observer-exception-expected.txt:
- platform/gtk/editing/input/option-page-up-down-expected.txt:
- platform/gtk/editing/input/scroll-viewport-page-up-down-expected.txt:
- platform/gtk/editing/pasteboard/emacs-cntl-y-001-expected.txt:
- platform/gtk/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt:
- platform/gtk/editing/pasteboard/onpaste-text-html-expected.txt:
- platform/gtk/fast/canvas/webgl/copy-tex-image-and-sub-image-2d-bad-input-expected.txt:
- platform/gtk/fast/canvas/webgl/drawElements-empty-vertex-data-expected.txt:
- platform/gtk/fast/canvas/webgl/vertexAttribPointer-with-bad-offset-expected.txt:
- platform/gtk/fast/canvas/webgl/webgl-drawarrays-crash-2-expected.txt:
- platform/gtk/fast/canvas/webgl/webgl-drawarrays-crash-expected.txt:
- platform/gtk/fast/dom/shadow/tab-order-iframe-and-shadow-expected.txt:
- platform/gtk/fast/dynamic/015-expected.txt:
- platform/gtk/fast/events/remove-target-with-shadow-in-drag-expected.txt:
- platform/gtk/fast/events/updateLayoutForHitTest-expected.txt:
- platform/gtk/fast/repaint/reflection-redraw-expected.txt:
- platform/gtk/fast/text/crash-complex-text-surrogate-expected.txt:
- platform/gtk/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
- platform/gtk/http/tests/inspector/console-websocket-error-expected.txt:
- platform/gtk/http/tests/navigation/error404-goback-expected.txt:
- platform/gtk/http/tests/security/cross-origin-xsl-BLOCKED-expected.txt:
- platform/gtk/http/tests/security/mixedContent/websocket/insecure-websocket-in-iframe-expected.txt:
- platform/gtk/http/tests/security/mixedContent/websocket/insecure-websocket-in-main-frame-expected.txt:
- platform/gtk/http/tests/security/module-no-mime-type-expected.txt:
- platform/gtk/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt:
- platform/gtk/http/tests/security/xssAuditor/xss-filter-bypass-big5-expected.txt:
- platform/gtk/http/tests/security/xssAuditor/xss-filter-bypass-sjis-expected.txt:
- platform/gtk/http/tests/websocket/tests/hybi/close-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/2dcontext/imagebitmap/createImageBitmap-serializable-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-unique-origin.https-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads.sub.tentative-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/valid-content-type.tentative-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/html/semantics/scripting-1/the-script-element/module/errorhandling-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/import/paths-data-18-f-manual-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/import/paths-data-20-f-manual-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/import/shapes-polygon-03-t-manual-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/import/struct-dom-07-f-manual-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/import/struct-svg-02-f-manual-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/path/bearing/absolute-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/path/bearing/relative-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/path/bearing/zero-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/path/closepath/segment-completing-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/path/error-handling/render-until-error-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/shapes/reftests/disabled-shapes-01-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/shapes/scripted/disabled-shapes-not-hit-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/svg/text/visualtests/text-inline-size-001-visual-expected.txt:
- platform/gtk/imported/w3c/web-platform-tests/xhr/setrequestheader-content-type-expected.txt:
- platform/gtk/media/video-controls-no-scripting-expected.txt:
- platform/gtk/plugins/plugin-clip-subframe-expected.txt:
- platform/gtk/plugins/plugin-initiate-popup-window-expected.txt:
- platform/gtk/storage/domstorage/sessionstorage/blocked-file-access-expected.txt:
- platform/gtk/svg/custom/viewbox-syntax-expected.txt:
- platform/gtk/svg/hixie/error/010-expected.txt:
- platform/gtk/svg/hixie/error/011-expected.txt:
- platform/gtk/svg/hixie/error/013-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
- platform/gtk/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
- platform/ios-simulator-wk2/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt:
- platform/ios-simulator/fast/canvas/canvas-crash-expected.txt:
- platform/ios-simulator/fast/canvas/canvas-skia-excessive-size-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/paths-data-18-f-manual-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/paths-data-20-f-manual-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/shapes-polygon-03-t-manual-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/struct-dom-07-f-manual-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/import/struct-svg-02-f-manual-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/path/bearing/absolute-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/path/bearing/relative-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/path/bearing/zero-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/path/closepath/segment-completing-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/path/error-handling/render-until-error-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/shapes/reftests/disabled-shapes-01-expected.txt:
- platform/ios-simulator/imported/w3c/web-platform-tests/svg/text/visualtests/text-inline-size-001-visual-expected.txt:
- platform/ios-simulator/webgl/2.0.0/conformance/context/context-hidden-alpha-expected.txt:
- platform/ios-simulator/webgl/2.0.0/conformance/extensions/webgl-compressed-texture-pvrtc-expected.txt:
- platform/ios-simulator/webgl/2.0.0/conformance2/state/gl-object-get-calls-expected.txt:
- platform/ios-wk1/editing/pasteboard/paste-RTFD-expected.txt:
- platform/ios-wk1/editing/selection/5825350-1-expected.txt:
- platform/ios-wk1/editing/selection/5825350-2-expected.txt:
- platform/ios-wk1/http/tests/quicklook/top-navigation-blocked-expected.txt:
- platform/ios-wk1/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt:
- platform/ios-wk1/tables/mozilla_expected_failures/bugs/bug3517-expected.txt:
- platform/ios-wk2/compositing/iframes/page-cache-layer-tree-expected.txt:
- platform/ios-wk2/editing/execCommand/indent-pre-expected.txt:
- platform/ios-wk2/editing/pasteboard/emacs-cntl-y-001-expected.txt:
- platform/ios-wk2/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt:
- platform/ios-wk2/editing/selection/5825350-1-expected.txt:
- platform/ios-wk2/editing/selection/5825350-2-expected.txt:
- platform/ios-wk2/editing/selection/caret-and-focus-ring-expected.txt:
- platform/ios-wk2/editing/selection/caret-ltr-2-expected.txt:
- platform/ios-wk2/editing/selection/caret-ltr-2-left-expected.txt:
- platform/ios-wk2/editing/selection/caret-ltr-expected.txt:
- platform/ios-wk2/editing/selection/caret-ltr-right-expected.txt:
- platform/ios-wk2/editing/selection/caret-rtl-2-expected.txt:
- platform/ios-wk2/editing/selection/caret-rtl-2-left-expected.txt:
- platform/ios-wk2/editing/selection/caret-rtl-expected.txt:
- platform/ios-wk2/editing/selection/caret-rtl-right-expected.txt:
- platform/ios-wk2/editing/selection/selection-background-expected.txt:
- platform/ios-wk2/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
- platform/ios-wk2/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt:
- platform/ios-wk2/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
- platform/ios/editing/pasteboard/onpaste-text-html-expected.txt:
- platform/ios/editing/selection/mixed-editability-10-expected.txt:
- platform/ios/fast/attachment/attachment-select-on-click-expected.txt:
- platform/ios/fast/canvas/canvas-toDataURL-crash-expected.txt:
- platform/ios/fast/canvas/pattern-too-large-to-create-expected.txt:
- platform/ios/fast/dynamic/015-expected.txt:
- platform/ios/fast/events/touch/gesture/long-press-on-draggable-element-triggers-drag-expected.txt:
- platform/ios/fast/events/touch/gesture/right-click-gestures-set-cursor-at-correct-position-expected.txt:
- platform/ios/fast/text/crash-complex-text-surrogate-expected.txt:
- platform/ios/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
- platform/ios/http/tests/events/device-orientation-motion-non-secure-context-expected.txt:
- platform/ios/http/tests/navigation/error404-goback-expected.txt:
- platform/ios/http/tests/quicklook/submit-form-blocked-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/custom-elements/reactions/HTMLInputElement-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/dom/events/EventTarget-dispatchEvent-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/history-traversal/persisted-user-state-restoration/scroll-restoration-fragment-scrolling-cross-origin-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/html/browsers/windows/noreferrer-window-name-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-003-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/html/syntax/parsing-html-fragments/the-input-byte-stream-004-expected.txt:
- platform/ios/imported/w3c/web-platform-tests/xhr/setrequestheader-content-type-expected.txt:
- platform/ios/ios/fast/forms/date-input-decorations-expected.txt:
- platform/ios/ios/fast/loader/subresource-willSendRequest-null-prevents-load-event-expected.txt:
- platform/ios/ios/fast/media/media-no-src-attribute-parsing-expected.txt:
- platform/ios/ios/touch/touch-handler-on-window-expected.txt:
- platform/ios/storage/domstorage/sessionstorage/blocked-file-access-expected.txt:
- platform/ios/svg/custom/viewbox-syntax-expected.txt:
- platform/ios/svg/hixie/error/010-expected.txt:
- platform/ios/svg/hixie/error/011-expected.txt:
- platform/ios/svg/hixie/error/013-expected.txt:
- platform/ios/tables/mozilla_expected_failures/bugs/bug3517-expected.txt:
- platform/ios/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
- platform/ios/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
- platform/ios/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
- platform/ios/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
- platform/ios/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
- platform/ios/webaudio/audionode-expected.txt:
- platform/ios/webgl/2.0.0/conformance/context/context-hidden-alpha-expected.txt:
- platform/mac-highsierra-wk1/pageoverlay/overlay-small-frame-mouse-events-expected.txt:
- platform/mac-highsierra/inspector/debugger/async-stack-trace-expected.txt:
- platform/mac-wk1/fast/scrolling/scroll-animator-basic-events-expected.txt:
- platform/mac-wk1/fast/scrolling/scroll-animator-select-list-events-expected.txt:
- platform/mac-wk1/http/tests/xmlhttprequest/access-control-and-redirects-expected.txt:
- platform/mac-wk1/http/tests/xmlhttprequest/access-control-preflight-not-successful-expected.txt:
- platform/mac-wk1/http/tests/xmlhttprequest/cross-origin-no-authorization-expected.txt:
- platform/mac-wk1/http/tests/xmlhttprequest/sync-xhr-in-unload-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/fetch/api/abort/general-serviceworker.https-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/html/browsers/the-window-object/apis-for-creating-and-navigating-browsing-contexts-by-name/no_window_open_when_term_nesting_level_nonzero.window-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads.sub.tentative-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_anchor_download_allow_downloads_without_user_activation.sub.tentative-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/url/failure-expected.txt:
- platform/mac-wk1/imported/w3c/web-platform-tests/xhr/late-upload-events-expected.txt:
- platform/mac-wk1/pageoverlay/overlay-small-frame-mouse-events-expected.txt:
- platform/mac-wk2/http/tests/navigation/keyboard-events-during-provisional-navigation-expected.txt:
- platform/mac-wk2/plugins/plugin-clip-subframe-expected.txt:
- platform/mac/fast/AppleScript/001-expected.txt:
- platform/mac/fast/canvas/webgl/oes-element-index-uint-expected.txt:
- platform/mac/fast/dynamic/015-expected.txt:
- platform/mac/fast/events/updateLayoutForHitTest-expected.txt:
- platform/mac/fast/repaint/reflection-redraw-expected.txt:
- platform/mac/fast/text/crash-complex-text-surrogate-expected.txt:
- platform/mac/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
- platform/mac/http/tests/inspector/console-websocket-error-expected.txt:
- platform/mac/http/tests/navigation/error404-goback-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/import/paths-data-18-f-manual-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/import/paths-data-20-f-manual-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/import/shapes-polygon-03-t-manual-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/import/struct-dom-07-f-manual-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/import/struct-svg-02-f-manual-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/path/bearing/absolute-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/path/bearing/relative-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/path/bearing/zero-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/path/closepath/segment-completing-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/path/error-handling/render-until-error-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/shapes/reftests/disabled-shapes-01-expected.txt:
- platform/mac/imported/w3c/web-platform-tests/svg/text/visualtests/text-inline-size-001-visual-expected.txt:
- platform/mac/inspector/debugger/async-stack-trace-expected.txt:
- platform/mac/media/video-controls-no-scripting-expected.txt:
- platform/mac/plugins/plugin-clip-subframe-expected.txt:
- platform/mac/plugins/plugin-initiate-popup-window-expected.txt:
- platform/mac/svg/custom/viewbox-syntax-expected.txt:
- platform/mac/svg/hixie/error/010-expected.txt:
- platform/mac/svg/hixie/error/011-expected.txt:
- platform/mac/svg/hixie/error/013-expected.txt:
- platform/mac/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
- platform/mac/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
- platform/mac/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
- platform/mac/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
- platform/mac/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
- platform/win-future/tables/mozilla_expected_failures/bugs/bug3517-expected.txt:
- platform/win/TestExpectations:
- platform/win/editing/execCommand/indent-pre-expected.txt:
- platform/win/fast/canvas/webgl/angle-instanced-arrays-expected.txt:
- platform/win/fast/canvas/webgl/webgl-draw-buffers-expected.txt:
- platform/win/fast/css/parse-border-image-repeat-null-crash-expected.txt:
- platform/win/fast/dom/html-link-element-activation-behavior-url-is-null-expected.txt:
- platform/win/fast/dynamic/015-expected.txt:
- platform/win/fast/events/ondrop-text-html-expected.txt:
- platform/win/fast/events/panScroll-correct-direction-expected.txt:
- platform/win/fast/events/panScroll-event-fired-expected.txt:
- platform/win/fast/events/panScroll-preventDefault-expected.txt:
- platform/win/fast/events/updateLayoutForHitTest-expected.txt:
- platform/win/fast/forms/input-set-composition-scroll-expected.txt:
- platform/win/fast/ondrop-text-html-expected.txt:
- platform/win/fast/repaint/reflection-redraw-expected.txt:
- platform/win/fast/text/crash-complex-text-surrogate-expected.txt:
- platform/win/fast/xmlhttprequest/xmlhttprequest-multiple-sync-xhr-during-unload-expected.txt:
- platform/win/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
- platform/win/http/tests/navigation/error404-goback-expected.txt:
- platform/win/http/tests/xmlhttprequest/access-control-and-redirects-expected.txt:
- platform/win/http/tests/xmlhttprequest/access-control-preflight-not-successful-expected.txt:
- platform/win/http/tests/xmlhttprequest/cross-origin-no-authorization-expected.txt:
- platform/win/imported/w3c/web-platform-tests/cors/late-upload-events-expected.txt:
- platform/win/imported/w3c/web-platform-tests/url/failure-expected.txt:
- platform/win/imported/w3c/web-platform-tests/xhr/access-control-and-redirects-expected.txt:
- platform/win/imported/w3c/web-platform-tests/xhr/late-upload-events-expected.txt:
- platform/win/inspector-protocol/debugger/setBreakpoint-actions-expected.txt:
- platform/win/svg/custom/viewbox-syntax-expected.txt:
- platform/win/svg/hixie/error/010-expected.txt:
- platform/win/svg/hixie/error/011-expected.txt:
- platform/win/svg/hixie/error/013-expected.txt:
- platform/win/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
- platform/win/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
- platform/win/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
- platform/win/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
- platform/win/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
- platform/wincairo/editing/execCommand/indent-pre-expected.txt:
- platform/wincairo/editing/pasteboard/emacs-cntl-y-001-expected.txt:
- platform/wincairo/editing/pasteboard/emacs-ctrl-k-y-001-expected.txt:
- platform/wincairo/fast/canvas/webgl/css-webkit-canvas-expected.txt:
- platform/wincairo/fast/canvas/webgl/css-webkit-canvas-repaint-expected.txt:
- platform/wincairo/fast/dynamic/015-expected.txt:
- platform/wincairo/fast/events/updateLayoutForHitTest-expected.txt:
- platform/wincairo/fast/repaint/reflection-redraw-expected.txt:
- platform/wincairo/fast/text/crash-complex-text-surrogate-expected.txt:
- platform/wincairo/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
- platform/wincairo/media/video-controls-captions-trackmenu-expected.txt:
- platform/wincairo/plugins/netscape-dom-access-expected.txt:
- platform/wincairo/plugins/plugin-initiate-popup-window-expected.txt:
- platform/wincairo/svg/custom/viewbox-syntax-expected.txt:
- platform/wincairo/svg/hixie/error/013-expected.txt:
- platform/wincairo/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
- platform/wincairo/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
- platform/wincairo/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
- platform/wincairo/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
- platform/wincairo/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
- platform/wk2/http/tests/contentextensions/block-everything-unless-domain-expected.txt:
- platform/wk2/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
- platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-expected.txt:
- platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-in-body-expected.txt:
- platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-allow-expected.txt:
- platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny-expected.txt:
- platform/wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt:
- platform/wk2/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-inherited-policy-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-xslt-document-in-iframe-with-inherited-policy-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-iframe-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-main-frame-expected.txt:
- platform/wk2/http/tests/security/drag-drop-local-file-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-basic-auth-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-css-in-iframe-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-css-in-main-frame-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-css-with-secure-cookies-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-executable-css-with-secure-cookies-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-form-in-main-frame-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials-expected.txt:
- platform/wk2/http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-block-expected.txt:
- platform/wk2/http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-expected.txt:
- platform/wk2/http/tests/security/xssAuditor/script-tag-with-callbacks-expected.txt:
- platform/wk2/http/wpt/cross-origin-window-policy/navigation-from-subframe-via-anchor-target-expected.txt:
- platform/wpe/fast/canvas/webgl/angle-instanced-arrays-expected.txt:
- platform/wpe/fast/canvas/webgl/copy-tex-image-and-sub-image-2d-bad-input-expected.txt:
- platform/wpe/fast/canvas/webgl/drawElements-empty-vertex-data-expected.txt:
- platform/wpe/fast/canvas/webgl/index-validation-with-subsequent-draws-expected.txt:
- platform/wpe/fast/canvas/webgl/oes-texture-half-float-expected.txt:
- platform/wpe/fast/canvas/webgl/vertexAttribPointer-with-bad-offset-expected.txt:
- platform/wpe/fast/canvas/webgl/webgl-draw-buffers-expected.txt:
- platform/wpe/fast/canvas/webgl/webgl-drawarrays-crash-2-expected.txt:
- platform/wpe/fast/canvas/webgl/webgl-drawarrays-crash-expected.txt:
- platform/wpe/fast/dynamic/015-expected.txt:
- platform/wpe/fast/events/updateLayoutForHitTest-expected.txt:
- platform/wpe/fast/overflow/scrollbar-restored-and-then-locked-expected.txt:
- platform/wpe/fast/xsl/xslt-missing-namespace-in-xslt-expected.txt:
- platform/wpe/http/tests/websocket/tests/hybi/close-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/2dcontext/imagebitmap/createImageBitmap-invalid-args-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/FileAPI/url/sandboxed-iframe-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/dom/events/EventTarget-dispatchEvent-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-unique-origin.https-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/encrypted-media/idlharness.https-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/fetch/api/request/request-keepalive-quota-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/html/dom/reflection-embedded-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/html/semantics/embedded-content/the-iframe-element/iframe_sandbox_navigation_download_allow_downloads.sub.tentative-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/html/semantics/scripting-1/the-script-element/json-module/valid-content-type.tentative-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/html/semantics/scripting-1/the-script-element/module/integrity-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/import/paths-data-18-f-manual-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/import/paths-data-20-f-manual-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/import/shapes-polygon-03-t-manual-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/import/struct-dom-07-f-manual-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/import/struct-svg-02-f-manual-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/path/bearing/absolute-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/path/bearing/relative-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/path/bearing/zero-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/path/closepath/segment-completing-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/path/error-handling/render-until-error-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/shapes/reftests/disabled-shapes-01-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/shapes/scripted/disabled-shapes-not-hit-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/svg/text/visualtests/text-inline-size-001-visual-expected.txt:
- platform/wpe/imported/w3c/web-platform-tests/xhr/setrequestheader-content-type-expected.txt:
- platform/wpe/storage/domstorage/sessionstorage/blocked-file-access-expected.txt:
- platform/wpe/svg/custom/js-font-test-expected.txt:
- platform/wpe/svg/custom/viewbox-syntax-expected.txt:
- platform/wpe/svg/hixie/error/010-expected.txt:
- platform/wpe/svg/hixie/error/011-expected.txt:
- platform/wpe/svg/hixie/error/013-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/bugs/bug92868_1-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/dom/appendCells1-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/dom/appendCellsRebuild1-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/dom/insertTbodyExpand1-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/dom/insertTbodyRebuild1-expected.txt:
- plugins/frameset-with-plugin-frame-expected.txt:
- plugins/get-user-agent-with-null-npp-from-npp-new-expected.txt:
- plugins/layout-in-beforeload-listener-affects-plugin-loading-expected.txt:
- plugins/netscape-plugin-map-data-to-src-expected.txt:
- plugins/no-mime-with-valid-extension-expected.txt:
- plugins/npruntime/delete-plugin-within-hasProperty-return-false-expected.txt:
- plugins/npruntime/delete-plugin-within-hasProperty-return-true-expected.txt:
- plugins/npruntime/delete-plugin-within-setProperty-expected.txt:
- plugins/plugin-clip-subframe-expected.txt:
- plugins/unsupported-plugin-with-replacement-in-iframe-crash-expected.txt:
- quicklook/powerpoint-expected.txt:
- quicklook/powerpoint-legacy-expected.txt:
- quicklook/word-expected.txt:
- quicklook/word-legacy-expected.txt:
- security/cannot-read-self-from-file-expected.txt:
- storage/domstorage/localstorage/blocked-file-access-expected.txt:
- storage/domstorage/localstorage/blocked-file-access-permitted-by-quirk-expected.txt:
- storage/domstorage/localstorage/file-can-access-expected.txt:
- storage/domstorage/sessionstorage/blocked-file-access-expected.txt:
- storage/indexeddb/exception-in-event-aborts-expected.txt:
- storage/indexeddb/modern/objectstore-autoincrement-types-expected.txt:
- storage/indexeddb/transaction-error-expected.txt:
- storage/indexeddb/version-change-abort-expected.txt:
- storage/websql/alter-to-info-table-expected.txt:
- storage/websql/change-version-expected.txt:
- storage/websql/change-version-handle-reuse-expected.txt:
- storage/websql/change-version-no-crash-on-preflight-failure-expected.txt:
- storage/websql/close-during-stress-test-expected.txt:
- storage/websql/database-lock-after-reload-expected.txt:
- storage/websql/empty-statement-expected.txt:
- storage/websql/execute-sql-args-expected.txt:
- storage/websql/execute-sql-rowsAffected-expected.txt:
- storage/websql/executesql-accepts-only-one-statement-expected.txt:
- storage/websql/hash-change-with-xhr-expected.txt:
- storage/websql/multiple-databases-garbage-collection-expected.txt:
- storage/websql/multiple-transactions-expected.txt:
- storage/websql/multiple-transactions-on-different-handles-expected.txt:
- storage/websql/null-callbacks-expected.txt:
- storage/websql/open-database-creation-callback-expected.txt:
- storage/websql/open-database-creation-callback-isolated-world-expected.txt:
- storage/websql/open-database-empty-version-expected.txt:
- storage/websql/open-database-expand-quota-expected.txt:
- storage/websql/open-database-over-quota-expected.txt:
- storage/websql/open-database-set-empty-version-expected.txt:
- storage/websql/open-database-while-transaction-in-progress-expected.txt:
- storage/websql/openDatabase-deprecation-expected.txt:
- storage/websql/private-browsing-noread-nowrite-expected.txt:
- storage/websql/read-and-write-transactions-dont-run-together-expected.txt:
- storage/websql/read-transactions-running-concurrently-expected.txt:
- storage/websql/sql-data-types-expected.txt:
- storage/websql/sql-error-codes-expected.txt:
- storage/websql/statement-error-callback-expected.txt:
- storage/websql/statement-error-callback-isolated-world-expected.txt:
- storage/websql/statement-success-callback-isolated-world-expected.txt:
- storage/websql/success-callback-expected.txt:
- storage/websql/success-callback-when-page-defers-loading-expected.txt:
- storage/websql/test-authorizer-expected.txt:
- storage/websql/transaction-callback-exception-crash-expected.txt:
- storage/websql/transaction-callback-isolated-world-expected.txt:
- storage/websql/transaction-database-expand-quota-expected.txt:
- storage/websql/transaction-error-callback-expected.txt:
- storage/websql/transaction-error-callback-isolated-world-expected.txt:
- storage/websql/transaction-prototype-expected.txt:
- storage/websql/transaction-success-callback-isolated-world-expected.txt:
- streams/readable-stream-error-messages-expected.txt:
- streams/reference-implementation/pipe-to-expected.txt:
- streams/reference-implementation/writable-stream-abort-expected.txt:
- streams/reference-implementation/writable-stream-expected.txt:
- svg/animations/animate-viewport-overflow-2-expected.txt:
- svg/animations/animate-viewport-overflow-expected.txt:
- svg/as-image/svg-canvas-pattern-with-link-tainted-expected.txt:
- svg/as-image/svg-canvas-svg-with-feimage-with-link-tainted-expected.txt:
- svg/as-image/svg-canvas-svg-with-image-with-link-tainted-expected.txt:
- svg/as-image/svg-canvas-xhtml-tainted-expected.txt:
- svg/css/parse-calc-length-expected.txt:
- svg/css/parse-height-expected.txt:
- svg/css/parse-length-expected.txt:
- svg/custom/createelement-expected.txt:
- svg/custom/getBBox-container-hiddenchild-expected.txt:
- svg/custom/invalid-length-units-expected.txt:
- svg/custom/layout-loop-expected.txt:
- svg/custom/poly-parsing-error-expected.txt:
- svg/custom/polyline-invalid-points-expected.txt:
- svg/custom/polyline-setattribute-points-null-expected.txt:
- svg/custom/svg-parse-overflow-1-expected.txt:
- svg/custom/svg-parse-overflow-2-expected.txt:
- svg/custom/svg-parse-overflow-3-expected.txt:
- svg/custom/svg-parse-overflow-4-expected.txt:
- svg/custom/svg-parse-overflow-5-expected.txt:
- svg/custom/use-nested-missing-target-removed-expected.txt:
- svg/dom/SVGAnimatedEnumeration-case-sensitive-expected.txt:
- svg/dom/fuzz-path-parser-expected.txt:
- svg/dom/path-parser-expected.txt:
- svg/dom/points-parser-expected.txt:
- svg/filters/feBlend-invalid-mode-expected.txt:
- svg/hixie/error/001-expected.txt:
- svg/hixie/error/007-expected.txt:
- svg/hixie/error/010-expected.txt:
- svg/hixie/error/011-expected.txt:
- svg/hixie/error/015-expected.txt:
- svg/in-html/overflow-repaint-expected.txt:
- svg/path-arc-invalid-expected.txt:
- tables/mozilla_expected_failures/bugs/bug3517-expected.txt:
- traversal/moz-bug559526-expected.txt:
- traversal/moz-mutations-3-expected.txt:
- userscripts/document-element-available-at-start-expected.txt:
- userscripts/script-not-run-for-fragments-expected.txt:
- userscripts/script-run-at-start-expected.txt:
- userscripts/user-script-audio-document-expected.txt:
- userscripts/user-script-image-document-expected.txt:
- userscripts/user-script-plugin-document-expected.txt:
- userscripts/user-script-video-document-expected.txt:
- userscripts/window-onerror-for-isolated-world-2-expected.txt:
- webgl/2.0.0/conformance2/buffers/uniform-buffers-expected.txt:
- webgl/2.0.0/conformance2/misc/expando-loss-2-expected.txt:
- webgl/2.0.0/conformance2/rendering/uniform-block-buffer-size-expected.txt:
- webgl/2.0.0/conformance2/state/gl-object-get-calls-expected.txt:
- webgl/many-contexts-access-after-loss-expected.txt:
- webgl/many-contexts-expected.txt:
- webgl/max-active-contexts-console-warning-expected.txt:
- webgl/max-active-contexts-gc-expected.txt:
- webgl/max-active-contexts-oldest-context-lost-expected.txt:
- webgl/max-active-contexts-webglcontextlost-prevent-default-expected.txt:
- workers/wasm-hashset-expected.txt:
- workers/wasm-hashset-many-2-expected.txt:
- workers/wasm-hashset-many-expected.txt:
- workers/wasm-long-compile-expected.txt:
- workers/wasm-long-compile-many-expected.txt:
- workers/wasm-references-expected.txt:
- 1:44 PM Changeset in webkit [259899] by
-
- 3 edits2 adds in trunk
ASSERTION FAILED: selection.isRange() in InsertListCommand::doApply
https://bugs.webkit.org/show_bug.cgi?id=210170
<rdar://problem/61410397>
Reviewed by Wenson Hsieh.
Source/WebCore:
If selectionForParagraphIteration returns a non-range selection, there is no need for finding
multiple paragraphs. And since non-range selection is handled, the assertion can be removed.
Test: editing/inserting/insert-list-in-table-assert.html
- editing/InsertListCommand.cpp:
(WebCore::InsertListCommand::doApply):
LayoutTests:
Added a regression test for the crash.
- editing/inserting/insert-list-in-table-assert-expected.txt: Added.
- editing/inserting/insert-list-in-table-assert.html: Added.
- 1:30 PM Changeset in webkit [259898] by
-
- 18 edits in trunk/Source/WebKit
First render after a process swap does not use accelerated rendering
https://bugs.webkit.org/show_bug.cgi?id=210297
<rdar://problem/61432515>
Reviewed by Antti Koivisto.
To prevent flashing on navigation when process-swapping, we were delaying the
DrawingAreaProxy::EnterAcceleratedCompositingMode IPC message from the WebProcess
to the UIProcess, until the new page is ready to display. The reason we did this
is that the EnterAcceleratedCompositingMode IPC message ends up setting the root
CALayer so the new content would become visible on screen. However, another side
effect of this is that we would also delay the point until which we get
accelerated rendering, which would negatively impact early page load performance.
To address the issue, the following changes were made:
- We no longer delay the DrawingAreaProxy::EnterAcceleratedCompositingMode IPC. In non process-swap cases, we send it as soon as the DrawingArea is constructed. In process-swap cases, we send it as soon as we commit the load since this is when the provisional drawing area gets committed and happens before we have any content to paint.
- In the UIProcess, when we get the DrawingAreaProxy::EnterAcceleratedCompositingMode IPC and we already have a root layer, we add the new one behind the existing one instead of replacing the existing one. As a result, the new layer will get accelerated compositing but will not be visible on screen yet.
- Introduce a new DrawingAreaProxy::DidFirstLayerFlush IPC which gets send at the point where we used to send the EnterAcceleratedCompositingMode IPC, meaning where the new content is ready to display. When the UIProcess receives this IPC, it actually replaces the root layer with the new layer so that the new content visible.
After this patch, our CALayers get accelerated compositing right away after a
process-swap but we still do not see any blank-flashing on navigation.
- UIProcess/Cocoa/WebViewImpl.h:
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::setAcceleratedCompositingRootLayer):
(WebKit::WebViewImpl::setAcceleratedCompositingRootLayerAfterFlush):
- UIProcess/DrawingAreaProxy.h:
(WebKit::DrawingAreaProxy::didFirstLayerFlush):
- UIProcess/DrawingAreaProxy.messages.in:
- UIProcess/PageClient.h:
(WebKit::PageClient::didFirstLayerFlush):
- UIProcess/SuspendedPageProxy.cpp:
(WebKit::SuspendedPageProxy::SuspendedPageProxy):
(WebKit::SuspendedPageProxy::pageDidFirstLayerFlush):
(WebKit::SuspendedPageProxy::closeWithoutFlashing):
- UIProcess/SuspendedPageProxy.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::suspendCurrentPageIfPossible):
(WebKit::WebPageProxy::commitProvisionalPage):
- UIProcess/WebPageProxy.h:
- UIProcess/mac/PageClientImplMac.h:
- UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::didFirstLayerFlush):
- UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
- UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
(WebKit::TiledCoreAnimationDrawingAreaProxy::didFirstLayerFlush):
- WebProcess/WebPage/DrawingArea.h:
(WebKit::DrawingArea::sendEnterAcceleratedCompositingModeIfNeeded):
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didCommitLoad):
- WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
- WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
(WebKit::TiledCoreAnimationDrawingArea::sendDidFirstLayerFlushIfNeeded):
(WebKit::TiledCoreAnimationDrawingArea::sendEnterAcceleratedCompositingModeIfNeeded):
(WebKit::TiledCoreAnimationDrawingArea::updateRendering):
- 1:27 PM Changeset in webkit [259897] by
-
- 9 edits in trunk/Source/JavaScriptCore
Use more PAC diversity for JIT probe code.
https://bugs.webkit.org/show_bug.cgi?id=210252
<rdar://problem/54490367>
Reviewed by Keith Miller.
Introducing new PtrTags:
JITProbePtrTag - for the client probe function.
JITProbeTrampolinePtrTag - for calling the ctiMasmProbeTrampoline.
JITProbeExecutorPtrTag - for calling the probe executor.
Currently, this is only the Probe::executeProbe().
JITProbeStackInitializationFunctionPtrTag - for calling the optional stack
initialization function that the client probe function may set.
We'll now use these in the JIT probe mechanism instead of adopting the default
CFunctionPtrTag.
- assembler/MacroAssembler.cpp:
(JSC::MacroAssembler::probe):
- assembler/MacroAssemblerARM64.cpp:
(JSC::MacroAssembler::probe):
- assembler/MacroAssemblerPrinter.h:
(JSC::MacroAssembler::print):
- assembler/ProbeContext.h:
- runtime/JSCPtrTag.h:
- tools/JSDollarVM.cpp:
(JSC::callWithStackSizeProbeFunction):
- wasm/WasmAirIRGenerator.cpp:
(JSC::Wasm::AirIRGenerator::emitLoopTierUpCheck):
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::emitLoopTierUpCheck):
- 1:22 PM Changeset in webkit [259896] by
-
- 3 edits8 adds in branches/safari-609-branch/LayoutTests
Cherry-pick r255832. rdar://problem/61601064
Improve stability of webrtc/video-autoplay.html by splitting tests in multiple files
https://bugs.webkit.org/show_bug.cgi?id=207252
Reviewed by Eric Carlson.
webrtc/video-autplay.html is flaky on bots.
On debug bots, removing the video element from the DOM does not always pause it in a timely manner.
To improve reliability, we split tests in individual files.
Removing flakiness expectation from video-autoplay.html since it no longer contains the flaky tests.
- TestExpectations:
- webrtc/video-autoplay-expected.txt:
- webrtc/video-autoplay.html:
- webrtc/video-autoplay1-expected.txt: Added.
- webrtc/video-autoplay1.html: Added.
- webrtc/video-autoplay2-expected.txt: Added.
- webrtc/video-autoplay2.html: Added.
- webrtc/video-autoplay3-expected.txt: Added.
- webrtc/video-autoplay3.html: Added.
- webrtc/video-autoplay4-expected.txt: Added.
- webrtc/video-autoplay4.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@255832 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:22 PM Changeset in webkit [259895] by
-
- 3 edits in branches/safari-609-branch/Tools
Cherry-pick r259099. rdar://problem/59610140
Unreviewed test gardening for iOS API tests.
- TestWebKitAPI/Tests/WebKitCocoa/ContextMenus.mm: (TEST):
- TestWebKitAPI/Tests/ios/FocusPreservationTests.mm: (TestWebKitAPI::TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259099 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:22 PM Changeset in webkit [259894] by
-
- 2 edits in branches/safari-609-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa
Cherry-pick r259100. rdar://problem/59611168
Unreviewed iOS API test gardening for rdar://59611168.
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259100 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:07 PM Changeset in webkit [259893] by
-
- 8 edits in branches/safari-609-branch/Source
Versioning.
- 1:02 PM Changeset in webkit [259892] by
-
- 3 edits2 adds in trunk
[iOS] Unable to select text by tap-hold or double tap-hold when allowsLinkPreview property is set to NO
https://bugs.webkit.org/show_bug.cgi?id=210191
<rdar://problem/60454016>
Reviewed by Tim Horton.
Source/WebKit:
In iOS 13.4, UIWKTextInteractionAssistant no longer uses the (misleadingly-named) "force press" gesture to drive
text selection when performing a long press. Instead, it now uses the UIVariableDelayLoupeGestureRecognizer,
i.e. the text interaction assistant's loupe gesture recognizer.
The highlight long press gesture, which is only enabled when
allowsLinkPreview
is set toNO
, is currently
allowed to recognize alongside the force press gesture but not the loupe gesture. This means that when link
previews are disabled, we'll end up allowing the highlight long press gesture to prevent text selection. A
similar issue already exists for the tap-and-half gesture as well.
To fix this, we allow the highlight long press gesture to recognize alongside both gestures.
Test: editing/selection/ios/select-text-with-link-preview-disabled.html
- UIProcess/ios/WKContentViewInteraction.mm:
(tapAndAHalfRecognizerClass):
While UITapAndAHalfRecognizer is declared in a UIKit private header, it is (perhaps unintentionally) not
exported, so attempting to call +[UITapAndAHalfRecognizer class] leads to a linker error. Work around this by
dynamically grabbing theClass
from the class name.
The tap and half gesture recognizer is private in UIKit and only used for text interaction gestures, so we
always want the highlight long press gesture to be able to recognize alongside it.
(-[WKContentView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
Also clean up some existing code by replacing
.get().
s with Objective-C bracket operators.
LayoutTests:
Add a test to verify that text can be selected by long pressing when link previews are disabled.
- editing/selection/ios/select-text-with-link-preview-disabled-expected.txt: Added.
- editing/selection/ios/select-text-with-link-preview-disabled.html: Added.
- 12:55 PM Changeset in webkit [259891] by
-
- 3 edits in trunk/Source/WebKit
Switch unused IOKit classes from allow-with-report to deny-with-report
https://bugs.webkit.org/show_bug.cgi?id=210136
<rdar://problem/61403216>
Reviewed by Per Arne Vollan.
After tracking telemetry for several weeks, we can now safely switch the default state
of a number of IOKit classes from 'allow with telemetry' to 'deny with telemetry'.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- WebProcess/com.apple.WebProcess.sb.in:
- 12:34 PM Changeset in webkit [259890] by
-
- 2 edits in trunk/Source/JavaScriptCore
[Follow up] Fix bad tests in testmasm's testCagePreservesPACFailureBit().
https://bugs.webkit.org/show_bug.cgi?id=210314
<rdar://problem/61556785>
Not reviewed.
Applying Keith's feedback in https://bugs.webkit.org/show_bug.cgi?id=210314#c5:
added the stronger test but kept the weaker one as well.
- assembler/testmasm.cpp:
(JSC::testCagePreservesPACFailureBit):
- 12:29 PM Changeset in webkit [259889] by
-
- 5 edits in trunk
mayContainEditableElementsInRect() can terminate search once the search rect is wholly contained inside a layer
https://bugs.webkit.org/show_bug.cgi?id=210340
Reviewed by Simon Fraser.
Source/WebKit:
Reduce false positives. This makes mayContainEditableElementsInRect() return false when the
search rect is wholly contained inside a higher paint order layer with no editable elements
that overlaps a layer with editable elements.
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.mm:
(WebKit::mayContainEditableElementsInRect):
LayoutTests:
Update test and test results. Add "will-transform: transform" to more strongly hint
to the engine to create a compositing layer for the overlapping element in the
composting sub-test.
- editing/editable-region/hit-test-overlap-expected.txt:
- editing/editable-region/hit-test-overlap.html:
- 11:50 AM Changeset in webkit [259888] by
-
- 3 edits in trunk/LayoutTests
[ Mac wk1 ] fast/images/animated-gif-restored-from-bfcache.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=206950
<rdar://problem/58998008>
Reviewed by Alex Christensen.
Make sure the test calls testRunner.waitUntilDone() synchronously when loaded instead
of doing it later on only when returning from the back/forward cache. Also, trigger
the navigation in a setTimeout(0) in the load event and rely on the
page-cache-helper.html like other back/forward cache tests do.
- fast/images/animated-gif-restored-from-bfcache.html:
- platform/mac-wk1/TestExpectations:
- 11:46 AM Changeset in webkit [259887] by
-
- 2 edits in branches/safari-609-branch/LayoutTests/imported/w3c
Cherry-pick r258411. rdar://problem/61410180
[iOS] 9 imported/w3c/web-platform-tests/pointerevents/pointerevent tests are failing since import in r253630
https://bugs.webkit.org/show_bug.cgi?id=209064
<rdar://problem/60330378>
Reviewed by Simon Fraser.
In r253630 we imported a host of new and updated WPT tests and these included changes to testdriver.js that our testdriver-vendor.js
implementation didn't know to handle. Specifically, pauses are now added after each pointer action to add a 16ms delay.
It was a mistake to use a stationary touch for pauses, instead we shuld just increase the time offset with the value set in the pause
and avoid changing any other state, so no resetting the last known x and y values, or adding a new touch into the event stream that
will be passed to UIScriptController.
And since there is now a built-in pause between pointer actions, there is also no need to set a harcoded value for a default
timeoffset, this is now provided directly by the action input.
- web-platform-tests/resources/testdriver-vendor.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@258411 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:26 AM Changeset in webkit [259886] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Add routines to message filter in the WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=210338
Reviewed by Geoffrey Garen.
Add required routines to the message filter in the WebContent sandbox on iOS. These have been observed
being in use during local testing.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 11:22 AM Changeset in webkit [259885] by
-
- 2 edits in trunk/LayoutTests
fast/scrolling/latching/iframe-latch-small-deltas.html is flakey
https://bugs.webkit.org/show_bug.cgi?id=210348
Mark this test flakey while I investigate.
- platform/mac-wk2/TestExpectations:
- 11:21 AM Changeset in webkit [259884] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk2 Debug ] media/modern-media-controls/media-controller/media-controller-auto-hide.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=210349
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 11:17 AM Changeset in webkit [259883] by
-
- 9 edits in trunk
Reset view navigation gesture state between tests
https://bugs.webkit.org/show_bug.cgi?id=210283
Re-land r259818 with a null-check on m_webPageProxyForBackForwardListForCurrentSwipe.
Source/WebKit:
- UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h:
- UIProcess/API/Cocoa/WKWebViewTesting.mm:
(-[WKWebView _resetNavigationGestureStateForTesting]):
- UIProcess/ViewGestureController.cpp:
(WebKit::ViewGestureController::willBeginGesture):
(WebKit::ViewGestureController::didEndGesture):
(WebKit::ViewGestureController::PendingSwipeTracker::handleEvent):
(WebKit::ViewGestureController::PendingSwipeTracker::eventWasNotHandledByWebCore):
- UIProcess/ViewGestureController.h:
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::removeSwipeSnapshot):
(WebKit::ViewGestureController::resetState):
(WebKit::ViewGestureController::reset):
- UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::removeSwipeSnapshot):
(WebKit::ViewGestureController::resetState):
(WebKit::ViewGestureController::reset):
Tools:
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaResetStateToConsistentValues):
- 11:14 AM Changeset in webkit [259882] by
-
- 1 copy in tags/Safari-609.2.4
Tag Safari-609.2.4.
- 10:13 AM Changeset in webkit [259881] by
-
- 2 edits in trunk/LayoutTests
REGRESSION: [ MacOS WK1 & iOS ] Layout Tests in media/media-fragments/ are flaky
https://bugs.webkit.org/show_bug.cgi?id=187557
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 10:06 AM Changeset in webkit [259880] by
-
- 12 edits in trunk/LayoutTests
Fix failing legacy CSP tests by converting them to modern tests instead.
https://bugs.webkit.org/show_bug.cgi?id=210310
Reviewed by Daniel Bates.
Convert these tests from verifying the (now removed) X-WebKit-CSP
header to the modern Content-Security-Policy header. Since we
don't have equivalent tests for the modern CSP header and it's not
very useful to have tons of tests for a feature we no longer
support.
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-allowed.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-default-ignored.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-get-allowed.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-get-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-get-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-javascript-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-javascript-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked.html:
- 9:46 AM Changeset in webkit [259879] by
-
- 4 edits in trunk
[WTF] DataMutex: Add runUnlocked()
https://bugs.webkit.org/show_bug.cgi?id=209811
Reviewed by Xabier Rodriguez-Calvar.
Source/WTF:
This patch introduces a runUnlocked() method in WTF::DataMutex::LockedWrapper
to run a lambda function without the lock. This is intended to be used for
small sections of the code that need to be unlocked, in cases where using
scoping would prove non-ergonomic or where running the unlocked section is only
necessary or desired when a certain condition is met -- something that cannot
be done with C++ scoping.
Safety mechanisms are provided. First, because this is used with a lambda, all
variables to be used in the unlocked section have to be specified in the
capture (global capture is possible but not recommended to simplify analysis).
Second, additional checks have been added to DataMutex to detect unlocked
accesses among other conditions. This will detect among other things naive
access to protected members by means of capturing the LockedWrapper by
reference.
- wtf/DataMutex.h:
(WTF::OwnerAwareLockAdapter::lock):
(WTF::OwnerAwareLockAdapter::unlock):
(WTF::OwnerAwareLockAdapter::tryLock):
(WTF::OwnerAwareLockAdapter::isLocked const):
(WTF::DataMutex::LockedWrapper::operator->):
(WTF::DataMutex::LockedWrapper::operator*):
(WTF::DataMutex::LockedWrapper::mutex):
(WTF::DataMutex::LockedWrapper::lockHolder):
(WTF::DataMutex::LockedWrapper::runUnlocked):
Tools:
Tests for runUnlocked() and DataMutex checks are introduced.
- TestWebKitAPI/Tests/WTF/DataMutex.cpp:
(TestWebKitAPI::TEST):
- 9:22 AM Changeset in webkit [259878] by
-
- 7 edits in trunk/Source/WTF
Add WARN_UNUSED_RETURN to decode methods in Source/WTF
<https://webkit.org/b/210323>
<rdar://problem/61565764>
Reviewed by Darin Adler.
- wtf/MediaTime.h:
- wtf/MonotonicTime.h:
- wtf/ObjectIdentifier.h:
(WTF::ObjectIdentifier::decode):
- wtf/Seconds.h:
- wtf/URL.h:
- wtf/persistence/PersistentCoder.h:
(WTF::Persistence::Coder::decode):
- 9:13 AM Changeset in webkit [259877] by
-
- 3 edits2 adds in trunk
[CSS Shadow Parts] Bad style sharing between sibling elements with different part attributes
https://bugs.webkit.org/show_bug.cgi?id=210249
<rdar://problem/61547528>
Reviewed by Daniel Bates.
Source/WebCore:
Style sharing optimization was unconditionally allowed for elements that were styled with part pseudo element.
This could lead to miscomputed style.
Test case by Justin Fagnani.
Test: fast/css/shadow-parts/shadow-part-style-sharing.html
- style/StyleSharingResolver.cpp:
(WebCore::Style::SharingResolver::canShareStyleWithElement):
Only allow style sharing if parts match.
LayoutTests:
- fast/css/shadow-parts/shadow-part-style-sharing-expected.html: Added.
- fast/css/shadow-parts/shadow-part-style-sharing.html: Added.
- 9:07 AM Changeset in webkit [259876] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=210339
Unreviewed gardening.
Added new entry for test failing since added. Also move flaky failures
to the flaky failures section.
- platform/gtk/TestExpectations:
- 9:03 AM Changeset in webkit [259875] by
-
- 4 edits in trunk/Source/WebKit
Add WARN_UNUSED_RETURN to decode methods in WebCoreArgumentCoders
<https://webkit.org/b/210322>
Reviewed by Darin Adler.
- Shared/WebCoreArgumentCoders.cpp:
(IPC::decodeSharedBuffer):
(IPC::decodeTypesAndData):
(IPC::decodeImage):
(IPC::decodeOptionalImage):
(IPC::decodeNativeImage):
(IPC::decodeOptionalNativeImage):
- Shared/WebCoreArgumentCoders.h:
- Shared/mac/WebCoreArgumentCodersMac.mm:
(IPC::decodeNSError):
- 8:54 AM Changeset in webkit [259874] by
-
- 2 edits in trunk/Source/WebKit
Add null pointer checkings in WebFullScreenManager
https://bugs.webkit.org/show_bug.cgi?id=210291
Reviewed by Daniel Bates.
Add null pointer checkings for "element" and "m_element" in WebFullScreenManager.
- WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::screenRectOfContents):
(WebKit::WebFullScreenManager::enterFullScreenForElement):
(WebKit::WebFullScreenManager::willEnterFullScreen):
(WebKit::WebFullScreenManager::didEnterFullScreen):
(WebKit::WebFullScreenManager::willExitFullScreen):
(WebKit::WebFullScreenManager::didExitFullScreen):
(WebKit::WebFullScreenManager::setAnimatingFullScreen):
(WebKit::WebFullScreenManager::requestExitFullScreen):
- 8:45 AM Changeset in webkit [259873] by
-
- 6 edits6 copies in trunk
Roll changelogs
- 8:43 AM Changeset in webkit [259872] by
-
- 15 edits6 adds in trunk
[Async overflow scrolling] Vertical scrolls over a horizontally scrollable overflow are captured
https://bugs.webkit.org/show_bug.cgi?id=210320
Reviewed by Tim Horton.
Source/WebCore:
This patch adds somewhat more sophisticated latching logic to the scrolling thread, which
fixes the inability to vertically scroll if the mouse is over an enclosed horizontal scroller.
ScrollingTree owns a ScrollingTreeLatchingController, which determines when to latch and clear
latching. Latch clearing uses a 100ms delay (like main thread latching) so that a starting gesture
soon after another gesture, whose initial x and y are small, goes to the same scroller as before.
Scrolling tree latching works as follows. When we receive a scroll event which allows use of the
latched node, and there is a latched node, send the event directly to that node. Otherwise,
hit-test to find the most deeply nested scroll target. Traverse up the parent chain giving each node
an opportunity to handle the event. If handled by a node, that node becomes the latched node.
ScrollingTree no longer tracks the latched node itself.
Tests: scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe.html
scrollingcoordinator/mac/latching/horizontal-overflow-in-vertical-overflow.html
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::shouldHandleWheelEventSynchronously):
(WebCore::ScrollingTree::handleWheelEvent):
(WebCore::ScrollingTree::commitTreeState):
(WebCore::ScrollingTree::latchedNodeID const):
(WebCore::ScrollingTree::clearLatchedNode):
(WebCore::ScrollingTree::mainFrameScrollPosition const):
(WebCore::ScrollingTree::scrollingTreeAsText):
(WebCore::ScrollingTree::setOrClearLatchedNode): Deleted.
(WebCore::ScrollingTree::latchedNode): Deleted.
(WebCore::ScrollingTree::setLatchedNode): Deleted.
- page/scrolling/ScrollingTree.h:
(WebCore::ScrollingTree::hasLatchedNode const): Deleted.
- page/scrolling/ScrollingTreeLatchingController.cpp: Added.
(WebCore::ScrollingTreeLatchingController::receivedWheelEvent):
(WebCore::ScrollingTreeLatchingController::latchedNodeForEvent const):
(WebCore::ScrollingTreeLatchingController::latchedNodeID const):
(WebCore::ScrollingTreeLatchingController::nodeDidHandleEvent):
(WebCore::ScrollingTreeLatchingController::nodeWasRemoved):
(WebCore::ScrollingTreeLatchingController::clearLatchedNode):
- page/scrolling/ScrollingTreeLatchingController.h: Added.
- page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::isLatchedNode const):
(WebCore::ScrollingTreeScrollingNode::canScrollWithWheelEvent const):
(WebCore::ScrollingTreeScrollingNode::scrollLimitReached const):
- page/scrolling/ScrollingTreeScrollingNode.h:
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::handleWheelEvent):
- page/scrolling/mac/ScrollingTreeOverflowScrollingNodeMac.mm:
(WebCore::ScrollingTreeOverflowScrollingNodeMac::handleWheelEvent):
LayoutTests:
Tests for horizontal inside vertical overflow, test that hit-testing inside scrolled-to-limit horizontal scrollers
still allows for swipe navigation, and test the latching timeout.
- fast/scrolling/latching/iframe-latch-small-deltas-expected.txt:
- fast/scrolling/latching/iframe-latch-small-deltas.html:
- scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe-expected.txt: Added.
- scrollingcoordinator/mac/latching/horizontal-overflow-back-swipe.html: Added.
- scrollingcoordinator/mac/latching/horizontal-overflow-in-vertical-overflow-expected.txt: Added.
- scrollingcoordinator/mac/latching/horizontal-overflow-in-vertical-overflow.html: Added.
- 8:27 AM Changeset in webkit [259871] by
-
- 3 edits2 adds in trunk
Hit-testing a WebTiledBackingLayer with an animation asserts
https://bugs.webkit.org/show_bug.cgi?id=210318
Reviewed by Tim Horton.
Source/WebCore:
collectDescendantLayersAtPoint() calls [layer presentationLayer] for layers
with running animations, and this calls -initWithLayer: on our layer subclasses.
Fix WebTiledBackingLayer to not assert in this case.
Test: fast/scrolling/mac/hit-test-overflow-tiled-layer.html
- platform/graphics/ca/cocoa/WebTiledBackingLayer.mm:
(-[WebTiledBackingLayer initWithLayer:]):
LayoutTests:
Test that scrolling-thread-hit-tests a tiled layer with an animation on it.
- fast/scrolling/mac/hit-test-overflow-tiled-layer-expected.txt: Added.
- fast/scrolling/mac/hit-test-overflow-tiled-layer.html: Added.
- 8:18 AM Changeset in webkit [259870] by
-
- 2 edits in trunk/Tools
[Tools] Fix gdb WebCoreQualifiedNamePrinter
https://bugs.webkit.org/show_bug.cgi?id=210109
Reviewed by Daniel Bates.
My gdb was throwing exceptions like this when printing
QualifiedName's:
File "/webkit/Tools/gdb/webkit.py", line 205, in init
gdb.error: There is no member or method named m_prefix.
This patch adds a missing m_ptr indirection to traverse
RefPtr<QualifiedNameImpl>, fixing the issue.
- gdb/webkit.py:
(WebCoreQualifiedNamePrinter.init):
- 7:23 AM Changeset in webkit [259869] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Fix media accessibility sandbox violation in the WebContent process
https://bugs.webkit.org/show_bug.cgi?id=210301
Reviewed by Daniel Bates.
The media accessibility service is a global name, not a xpc service name.
No new tests, since I have not observed any bugs related to the denial of this service.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 6:25 AM Changeset in webkit [259868] by
-
- 2 edits in trunk/WebDriverTests
[WebDriver] Gardening, remove spurious entry
https://bugs.webkit.org/show_bug.cgi?id=210333
Unreviewed gardening.
All subtests in the test were passing, so the entry can be deleted.
- TestExpectations.json:
- 6:17 AM Changeset in webkit [259867] by
-
- 2 edits in trunk/Tools
[Tools] jhbuild should respect PKG_CONFIG_PATH
https://bugs.webkit.org/show_bug.cgi?id=210280
Reviewed by Carlos Alberto Lopez Perez.
Our jhbuildrc adds the system paths to PKG_CONFIG_PATH. This is not
necessary, as they are included implicitly by pkg-config, e.g.
$ mkdir /tmp/empty
$ PKG_CONFIG_PATH=/tmp/empty pkg-config --cflags glib-2.0
-I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
Apart from not being necessary, it is problematic because it makes
impossible to override system libraries in jhbuild-wrapper.
$ PKG_CONFIG_PATH=/home/ntrrgc/Apps/gst-1.10-prefix/lib/pkgconfig/ jhbuild-wrapper --gtk run bash
/webkit/WebKitBuild/DependenciesGTK/Root/lib64/pkgconfig:/webkit/WebKitBuild/DependenciesGTK/Root/lib/pkgconfig:/webkit/WebKitBuild/DependenciesGTK/Root/share/pkgconfig:/usr/share/pkgconfig:/usr/lib64/pkgconfig:/home/ntrrgc/Apps/gst-1.10-prefix/lib/pkgconfig
Note /usr/share/pkgconfig and /usr/lib64/pkgconfig are taking priority
over the user environment.
This patch removes that code, so that the user PKG_CONFIG_PATH takes
priority over the system default paths, while these keep having effect
too as explained before.
$ PKG_CONFIG_PATH=/home/ntrrgc/Apps/gst-1.10-prefix/lib/pkgconfig jhbuild-wrapper --gtk run bash
/webkit/WebKitBuild/DependenciesGTK/Root/lib64/pkgconfig:/webkit/WebKitBuild/DependenciesGTK/Root/lib/pkgconfig:/webkit/WebKitBuild/DependenciesGTK/Root/share/pkgconfig:/home/ntrrgc/Apps/gst-1.10-prefix/lib/pkgconfig
- jhbuild/jhbuildrc_common.py:
(init):
- 5:19 AM Changeset in webkit [259866] by
-
- 4 edits in trunk/Source/JavaScriptCore
[LLInt] Add fast path for TypedArray access on LLInt 32-bits
https://bugs.webkit.org/show_bug.cgi?id=210217
Reviewed by Yusuke Suzuki.
This patch is adding fast path case for in-bound TypedArray access on
32-bits LLInt. Since instructions are the same for both architectures,
we are refactoring this part of code toLowLevelInterpreter.asm
and
reusing it intoLowLevelInterpreter32_64.asm
.
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
- 4:10 AM Changeset in webkit [259865] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, mark several WPT's IndexedDB as flaky
https://bugs.webkit.org/show_bug.cgi?id=210332
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 4:06 AM Changeset in webkit [259864] by
-
- 3 edits in trunk/Tools
[Flatpak SDK] Flatpak build broken when using 'git config core.webkitbranchbuild=true'
https://bugs.webkit.org/show_bug.cgi?id=210292
Reviewed by Žan Doberšek.
- Scripts/webkitdirs.pm:
(getUserFlatpakPath): Ensure we probe for UserFlatpak always in
WebKitBuild, wether we're doing a "git branch" build or not.
- flatpak/flatpakutils.py:
(WebkitFlatpak.is_branch_build):
(WebkitFlatpak.run_in_sandbox): Make and bind-mount default build
directory only when not doing "git branch" builds.
- 4:04 AM Changeset in webkit [259863] by
-
- 2 edits in trunk/Tools
[Flatpak SDK] Generate one IceCC archive per toolchain
https://bugs.webkit.org/show_bug.cgi?id=210189
Reviewed by Žan Doberšek.
Add a utility option to webkit-flatpak so it regenerated
toolchains without needing a full SDK reinstall. Also we now
generate a self-contained toolchain archive embedding GCC and one
embedding CLang.
- flatpak/flatpakutils.py:
(WebkitFlatpak.load_from_args):
(WebkitFlatpak.init):
(WebkitFlatpak.run_in_sandbox):
(WebkitFlatpak.setup_icecc):
(WebkitFlatpak.setup_dev_env):
- 4:02 AM Changeset in webkit [259862] by
-
- 2 edits in trunk/Tools
[GTK][WPE] Flatpak error when running run-webkit-tests
https://bugs.webkit.org/show_bug.cgi?id=209229
Reviewed by Žan Doberšek.
Report
flatpak build
spawned process errors only in verbose mode.
- flatpak/flatpakutils.py:
(WebkitFlatpak.execute_command):
(WebkitFlatpak.run_in_sandbox):
(WebkitFlatpak.run_gdb):
- 3:58 AM Changeset in webkit [259861] by
-
- 35 edits in trunk/Source
Introduce a RealtimeMediaSource observer dedicated to receiving audio samples
https://bugs.webkit.org/show_bug.cgi?id=210180
Reviewed by Eric Carlson.
Source/WebCore:
RealtimeMediaSource::Observer was called on various threads which was making iterating through them difficult.
Observers were copied to a vector for iterating each time and locking was happening for each indivudual observer.
Instead of doing that, RealtimeMediaSource::Observer no longer gives access to audio samples, all its methods are called from the main thread.
AudioSampleObserver is introduced with a single method to receive audio samples.
RealtimeMediaSource keeps a set of AudioSampleObserver separated from its existing Observer hashset.
These observers can only be added/removed from the main thread while audio sample delivery usually happens from a background thread.
We no longer need to copy the audio sample observers in a vector and lock only once when iterating the audio sample observers.
This change requires to update MediaStreamTrackPrivate and RealtimeMediaSource observers.
This includes WebAudio, Audio Renderer and Media Recorder.
Each corresponding class is now registering itself as a MediaStreamTrackPrivate::Observer and when needed as a RealtimeMediaSource::Observer.
This allows removing the additional copy-in-vector/lock that was happening when iterating over MediaStreamTrackPrivate::Observers for audio samples.
This change also allows for a consumer to always observe the MediaStreamTrackPrivate but receive audio samples only when needed.
We change the AudioTrackPrivateMediaStream implementation so that, if the renderer is muted, not playing, the track is muted or not enabled,
it no longer receives audio samples.
This is especially useful in the typical case where a video element displays the locally captured stream (including a local audio track) but is muted
to prevent feedback loop.
For that reason, the player is now setting the muted state of the renderer instead of setting volume to 0.
Covered by existing test sets.
- Modules/mediarecorder/MediaRecorder.cpp:
(WebCore::MediaRecorder::createMediaRecorderPrivate):
- Modules/mediarecorder/MediaRecorder.h:
- Modules/mediarecorder/MediaRecorderProvider.cpp:
(WebCore::MediaRecorderProvider::createMediaRecorderPrivate):
- Modules/mediarecorder/MediaRecorderProvider.h:
- loader/EmptyClients.cpp:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::setVolume):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::setMuted):
- platform/mediarecorder/MediaRecorderPrivate.cpp:
(WebCore::MediaRecorderPrivate::selectTracks):
- platform/mediarecorder/MediaRecorderPrivate.h:
(WebCore::MediaRecorderPrivate::setAudioSource):
(WebCore::MediaRecorderPrivate::~MediaRecorderPrivate):
- platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp:
(WebCore::MediaRecorderPrivateAVFImpl::create):
(WebCore::MediaRecorderPrivateAVFImpl::~MediaRecorderPrivateAVFImpl):
(WebCore::MediaRecorderPrivateAVFImpl::audioSamplesAvailable):
(WebCore::MediaRecorderPrivateAVFImpl::stopRecording):
(WebCore::MediaRecorderPrivateAVFImpl::fetchData):
- platform/mediarecorder/MediaRecorderPrivateAVFImpl.h:
- platform/mediarecorder/MediaRecorderPrivateMock.cpp:
(WebCore::MediaRecorderPrivateMock::MediaRecorderPrivateMock):
(WebCore::MediaRecorderPrivateMock::~MediaRecorderPrivateMock):
(WebCore::MediaRecorderPrivateMock::stopRecording):
(WebCore::MediaRecorderPrivateMock::sampleBufferUpdated):
(WebCore::MediaRecorderPrivateMock::audioSamplesAvailable):
(WebCore::MediaRecorderPrivateMock::generateMockCounterString):
(WebCore::MediaRecorderPrivateMock::fetchData):
- platform/mediarecorder/MediaRecorderPrivateMock.h:
- platform/mediastream/AudioTrackPrivateMediaStream.cpp:
(WebCore::AudioTrackPrivateMediaStream::AudioTrackPrivateMediaStream):
(WebCore::AudioTrackPrivateMediaStream::clear):
(WebCore::AudioTrackPrivateMediaStream::play):
(WebCore::AudioTrackPrivateMediaStream::pause):
(WebCore::AudioTrackPrivateMediaStream::setMuted):
(WebCore::AudioTrackPrivateMediaStream::audioSamplesAvailable):
(WebCore::AudioTrackPrivateMediaStream::trackMutedChanged):
(WebCore::AudioTrackPrivateMediaStream::trackEnabledChanged):
(WebCore::AudioTrackPrivateMediaStream::trackEnded):
(WebCore::AudioTrackPrivateMediaStream::updateRenderer):
(WebCore::AudioTrackPrivateMediaStream::startRenderer):
(WebCore::AudioTrackPrivateMediaStream::stopRenderer):
- platform/mediastream/AudioTrackPrivateMediaStream.h:
- platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
(WebCore::webkitMediaStreamSrcFinalize):
(WebCore::webkitMediaStreamSrcChangeState):
(WebCore::webkitMediaStreamSrcSetupSrc):
- platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::forEachTrack):
- platform/mediastream/MediaStreamPrivate.h:
- platform/mediastream/MediaStreamTrackPrivate.cpp:
(WebCore::MediaStreamTrackPrivate::forEachObserver const):
(WebCore::MediaStreamTrackPrivate::addObserver):
(WebCore::MediaStreamTrackPrivate::removeObserver):
(WebCore::MediaStreamTrackPrivate::hasStartedProducingAudioData):
- platform/mediastream/MediaStreamTrackPrivate.h:
- platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::addAudioSampleObserver):
(WebCore::RealtimeMediaSource::removeAudioSampleObserver):
(WebCore::RealtimeMediaSource::addObserver):
(WebCore::RealtimeMediaSource::removeObserver):
(WebCore::RealtimeMediaSource::forEachObserver const):
(WebCore::RealtimeMediaSource::audioSamplesAvailable):
- platform/mediastream/RealtimeMediaSource.h:
- platform/mediastream/RealtimeOutgoingAudioSource.cpp:
(WebCore::RealtimeOutgoingAudioSource::~RealtimeOutgoingAudioSource):
(WebCore::RealtimeOutgoingAudioSource::observeSource):
(WebCore::RealtimeOutgoingAudioSource::unobserveSource):
- platform/mediastream/RealtimeOutgoingAudioSource.h:
- platform/mediastream/WebAudioSourceProvider.h:
- platform/mediastream/mac/WebAudioSourceProviderAVFObjC.h:
- platform/mediastream/mac/WebAudioSourceProviderAVFObjC.mm:
(WebCore::WebAudioSourceProviderAVFObjC::WebAudioSourceProviderAVFObjC):
(WebCore::WebAudioSourceProviderAVFObjC::~WebAudioSourceProviderAVFObjC):
(WebCore::WebAudioSourceProviderAVFObjC::trackEnabledChanged):
(WebCore::WebAudioSourceProviderAVFObjC::audioSamplesAvailable):
- testing/Internals.cpp:
(WebCore::Internals::~Internals):
(WebCore::createRecorderMockSource):
(WebCore::Internals::observeMediaStreamTrack):
(WebCore::Internals::videoSampleAvailable):
- testing/Internals.h:
Source/WebKit:
Update SourceProxy to be an AudioSampleObserver.
Update MediaRecorder to only listen for audio samples if GPU remote writer is successfully created.
It also stops listening to audio samples as soon as stopping the recording.
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(WebKit::UserMediaCaptureManagerProxy::SourceProxy::SourceProxy):
(WebKit::UserMediaCaptureManagerProxy::SourceProxy::~SourceProxy):
- WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:
(WebKit::MediaRecorderPrivate::MediaRecorderPrivate):
(WebKit::MediaRecorderPrivate::~MediaRecorderPrivate):
(WebKit::MediaRecorderPrivate::audioSamplesAvailable):
(WebKit::MediaRecorderPrivate::stopRecording):
- WebProcess/GPU/webrtc/MediaRecorderPrivate.h:
- WebProcess/GPU/webrtc/MediaRecorderProvider.cpp:
(WebKit::MediaRecorderProvider::createMediaRecorderPrivate):
- WebProcess/GPU/webrtc/MediaRecorderProvider.h:
- 3:58 AM Changeset in webkit [259860] by
-
- 4 edits in trunk
[Flatpak SDK] Improved sccache support
https://bugs.webkit.org/show_bug.cgi?id=210027
Reviewed by Žan Doberšek.
.:
- Source/cmake/WebKitCCache.cmake: Check for sccache if one of its
environment variables has been set as well, otherwise the local
disk cache would be used, if WEBKIT_USE_SCCACHE is set to 1.
Tools:
Whitelist SCCACHE environment variables into the sandbox and allow
network access when one of those has been set.
- flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox):
- 3:50 AM Changeset in webkit [259859] by
-
- 16 edits in trunk
SWServer should not run a service worker that is terminating
https://bugs.webkit.org/show_bug.cgi?id=210044
Reviewed by Chris Dumez.
Source/WebCore:
If a test is being terminated and we want to restart it, we were previously running it right away.
This does not work well as the service worker process might still have the terminating service worker in its map.
Also, if the service worker is not able to terminate properly, we will kill the service worker process so there is no reason
to try running this service worker in this process.
Instead, wait for the service worker to terminate (which might include terminating the service worker process).
In addition, we remove the isServiceWorkerRunning internals API since this is potentially flaky as the service worker
might be terminated and rerunning in between two isServiceWorkerRunning checks.
Instead, we introduce whenServiceWorkerIsTerminated which will resolve as soon as the service worker goes to terminated.
Covered by existing spinning tests no longer crashing.
- testing/Internals.cpp:
(WebCore::Internals::whenServiceWorkerIsTerminated):
- testing/Internals.h:
- testing/Internals.idl:
- workers/service/SWClientConnection.h:
(WebCore::SWClientConnection::whenServiceWorkerIsTerminatedForTesting):
- workers/service/server/SWServer.cpp:
(WebCore::SWServer::runServiceWorkerIfNecessary):
(WebCore::SWServer::runServiceWorker):
(WebCore::SWServer::workerContextTerminated):
- workers/service/server/SWServerWorker.cpp:
(WebCore::SWServerWorker::whenTerminated):
(WebCore::SWServerWorker::setState):
- workers/service/server/SWServerWorker.h:
(WebCore::SWServerWorker::isNotRunning const):
Source/WebKit:
Implement whenServiceWorkerIsTerminated check.
- NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
(WebKit::WebSWServerConnection::whenServiceWorkerIsTerminatedForTesting):
- NetworkProcess/ServiceWorker/WebSWServerConnection.h:
- NetworkProcess/ServiceWorker/WebSWServerConnection.messages.in:
- WebProcess/Storage/WebSWClientConnection.cpp:
(WebKit::WebSWClientConnection::whenServiceWorkerIsTerminatedForTesting):
- WebProcess/Storage/WebSWClientConnection.h:
LayoutTests:
- http/wpt/service-workers/resources/routines.js:
(async waitForServiceWorkerNoLongerRunning):
Use new internals API.
- 3:32 AM Changeset in webkit [259858] by
-
- 3 edits in trunk/Source/WebCore
[EME][GStreamer] Relax proxy initialization assert
https://bugs.webkit.org/show_bug.cgi?id=210258
Reviewed by Xabier Rodriguez-Calvar.
update() may be called on a session before its parent MediaKeys object
has been associated with a media element. Supporting this is officially
optional, but enough sites (including the W3C EME tests) depend on this
optional behaviour that we should support it.
Covered by imported/w3c/web-platform-tests/encrypted-media.
- platform/encryptedmedia/CDMProxy.cpp:
(WebCore::CDMInstanceProxy::mergeKeysFrom): Since the background
proxy may not be installed yet, don't ASSERT() it exists.
- platform/encryptedmedia/CDMProxy.h:
(WebCore::KeyStore::hasKeys const):
(WebCore::CDMInstanceProxy::setProxy): Now, when the background
proxy is installed, check if any keys have been made available as
described above, and if so, set them.
- 3:32 AM Changeset in webkit [259857] by
-
- 9 edits in trunk
Unreviewed, reverting r259818.
https://bugs.webkit.org/show_bug.cgi?id=210330
"Causes crashes in at least three layout tests on iOS bots."
(Requested by ddkilzer on #webkit).
Reverted changeset:
"Reset view navigation gesture state between tests"
https://bugs.webkit.org/show_bug.cgi?id=210283
https://trac.webkit.org/changeset/259818
- 3:31 AM Changeset in webkit [259856] by
-
- 2 edits in trunk/Source/WebKit
[GTK] Use X11-specific GDK API in Netscape plugin
https://bugs.webkit.org/show_bug.cgi?id=210325
Reviewed by Adrian Perez de Castro.
Since the code is X11-specific we can do that and remove
deprecated API use.
- WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
(WebKit::getPluginDisplay):
(WebKit::x11Screen):
- 3:31 AM Changeset in webkit [259855] by
-
- 2 edits in trunk/Source/WebKit
[GTK] Drop deprecated Drag and Drop API use
https://bugs.webkit.org/show_bug.cgi?id=210327
Reviewed by Adrian Perez de Castro.
Use gtk_drag_begin_with_coordinates(), even if we let it guess the
coordinates itself from the event, as gtk_drag_begin() is
deprecated.
- UIProcess/gtk/DragAndDropHandler.cpp:
(WebKit::DragAndDropHandler::startDrag):
- 3:25 AM Changeset in webkit [259854] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Avoid direct GdkEvent field usage in GtkUtilities.h
https://bugs.webkit.org/show_bug.cgi?id=210329
Reviewed by Carlos Garcia Campos.
No new tests needed.
- platform/gtk/GtkUtilities.h:
(WebCore::wallTimeForEvent): Use gdk_event_get_time() instead of direct field access.
- 3:02 AM Changeset in webkit [259853] by
-
- 3 edits in trunk/Source/WebCore
Bump priority of LibWebRTCAudioModule thread
https://bugs.webkit.org/show_bug.cgi?id=210107
Reviewed by Eric Carlson.
LibWebRTCAudioModule operates on its own thread and is responsible to generate and push remote audio track data to audio renderers.
It does this every 50 milliseconds and any delay in this task will trigger audio crackling.
Migrate LibWebRTCAudioModule from a thread based approach to a WorkQueue.
This gives cleaner code and allows to set the WorkQueue QOS to QOS::UserInteractive
so that it does not get imnterrupted too often.
We expect the audio task to be done every 50 ms.
If it takes less than 50 ms to dispatch the task and execute, we dispatch a new task with some delay
to keep the exact 50ms delay.
Otherwise, we dispatch a task without any delay to try recovering as much as we can.
Manullay tested on iOS using mock sources on pages rendering multiple audio tracks.
This reduces audio crackling a lot but not completely.
- platform/mediastream/libwebrtc/LibWebRTCAudioModule.cpp:
(WebCore::LibWebRTCAudioModule::LibWebRTCAudioModule):
(WebCore::LibWebRTCAudioModule::StartPlayout):
(WebCore::LibWebRTCAudioModule::StartPlayoutOnAudioThread):
- platform/mediastream/libwebrtc/LibWebRTCAudioModule.h:
- 2:06 AM Changeset in webkit [259852] by
-
- 3 edits in trunk/Source/JavaScriptCore
Unreviewed, reverting r259849 and r259851.
https://bugs.webkit.org/show_bug.cgi?id=210328
Crash in LayoutTests (Requested by yusukesuzuki on #webkit).
Reverted changesets:
"[JSC] Use UnconditionalWriteBarrier in Baseline effectively
to reduce code size"
https://bugs.webkit.org/show_bug.cgi?id=209395
https://trac.webkit.org/changeset/259849
"Unreviewed, fix typo in comment"
https://bugs.webkit.org/show_bug.cgi?id=209395
https://trac.webkit.org/changeset/259851
Patch by Commit Queue <commit-queue@webkit.org> on 2020-04-10
- 12:39 AM Changeset in webkit [259851] by
-
- 3 edits in trunk/Source/JavaScriptCore
Unreviewed, fix typo in comment
https://bugs.webkit.org/show_bug.cgi?id=209395
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitPutByValWithCachedId):
(JSC::JIT::emit_op_del_by_id):
(JSC::JIT::emit_op_del_by_val):
(JSC::JIT::emit_op_put_by_id):
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emitPutByValWithCachedId):
(JSC::JIT::emit_op_put_by_id):
Apr 9, 2020:
- 11:55 PM Changeset in webkit [259850] by
-
- 4 edits in trunk
REGRESSION: (r258434) [ Mac WK1 ] media/track/track-css-user-override.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=210134
Reviewed by Eric Carlson.
Source/WebCore:
Call captionPreferencesChanged() directly in CaptionUserPreferences::setCaptionsStyleSheetOverride().
- page/CaptionUserPreferences.cpp:
(WebCore::CaptionUserPreferences::setCaptionsStyleSheetOverride):
LayoutTests:
Make the test reliable by replacing the timer and testExpected based approach
with the approach based on testExpectedEventually. Also remove unnecessary code.
- media/track/track-css-user-override.html:
- 11:48 PM Changeset in webkit [259849] by
-
- 3 edits in trunk/Source/JavaScriptCore
[JSC] Use UnconditionalWriteBarrier in Baseline effectively to reduce code size
https://bugs.webkit.org/show_bug.cgi?id=209395
Reviewed by Tadeu Zagallo.
In put/delete we always need to emit write-barrier if the base is a cell since IC can write things (writing new StructureID etc.).
We should use emitWriteBarrier with UnconditionalWriteBarrier to remove unnecessary branch.
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitPutByValWithCachedId):
(JSC::JIT::emit_op_del_by_id):
(JSC::JIT::emit_op_del_by_val):
(JSC::JIT::emit_op_put_by_id):
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emitPutByValWithCachedId):
(JSC::JIT::emit_op_put_by_id):
- 11:25 PM Changeset in webkit [259848] by
-
- 2 edits in trunk/Source/JavaScriptCore
Fix bad tests in testmasm's testCagePreservesPACFailureBit().
https://bugs.webkit.org/show_bug.cgi?id=210314
<rdar://problem/61556785>
Reviewed by Yusuke Suzuki.
Some of these tests will crash when validated untagging is enabled.
- assembler/testmasm.cpp:
(JSC::testCagePreservesPACFailureBit):
- 10:48 PM Changeset in webkit [259847] by
-
- 12 edits in trunk/Source/WebKit
Add WARN_UNUSED_RETURN to decode methods in Source/WebKit/Platform/IPC
<https://webkit.org/b/210316>
Reviewed by Alex Christensen.
- Platform/IPC/ArgumentCoder.h:
- Platform/IPC/ArgumentCoders.cpp:
(IPC::ArgumentCoder<WallTime>::decode):
(IPC::ArgumentCoder<AtomString>::decode):
(IPC::ArgumentCoder<CString>::decode):
(IPC::ArgumentCoder<String>::decode):
(IPC::ArgumentCoder<SHA1::Digest>::decode):
(IPC::ArgumentCoder<audit_token_t>::decode):
(IPC::ArgumentCoder<Monostate>::decode):
- Platform/IPC/ArgumentCoders.h:
(IPC::SimpleArgumentCoder::decode):
(IPC::ArgumentCoder<OptionSet<T>>::decode):
(IPC::ArgumentCoder<Optional<T>>::decode):
(IPC::ArgumentCoder<Box<T>>::decode):
(IPC::TupleDecoderImpl::decode):
(IPC::TupleDecoderImpl<Type>::decode):
(IPC::TupleDecoder::decode):
(IPC::TupleDecoder<0>::decode):
(IPC::VariantCoder::decode):
- Platform/IPC/Attachment.h:
- Platform/IPC/DataReference.h:
- Platform/IPC/Decoder.h:
(IPC::Decoder::decodeEnum):
- Platform/IPC/FormDataReference.h:
(IPC::FormDataReference::decode):
- Platform/IPC/ImageDataReference.h:
(IPC::ImageDataReference::decode):
- Platform/IPC/SharedBufferDataReference.h:
(IPC::SharedBufferDataReference::decode):
- Platform/IPC/StringReference.h:
- Platform/IPC/cocoa/MachPort.h:
(IPC::MachPort::decode):
- 10:22 PM Changeset in webkit [259846] by
-
- 16 edits in trunk/Source/WebCore
Fix up code style for scroll animation
https://bugs.webkit.org/show_bug.cgi?id=210171
Reviewed by Simon Fraser.
- Use AnimatedScroll instead of bool to indicate animated or not.
- Remove parameter ScrollRectToVisibleOptions, the autoscroll status is available from EventHandler.
- In order to keep consistent, use RenderLayer::setScrollPosition instead of RenderLayer::scrollToPosition.
- Add AnimatedScroll parameter to ScrollView::setContentsScrollPosition, then the scroll animation
can be dealt in FrameView::setScrollPosition.
- In ScrollView::setScrollPosition, the scroll animation should be cancled before return.
- dom/Element.cpp: Use AnimatedScroll instead of bool.
(WebCore::Element::scrollTo):
(WebCore::Element::setScrollLeft):
(WebCore::Element::setScrollTop):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::scrollTo const): No need to call scrollToOffsetWithAnimation here.
- page/FrameView.cpp:
(WebCore::FrameView::setScrollPosition):
- page/FrameView.h:
- platform/ScrollTypes.h: Add AnimatedScroll.
- platform/ScrollView.cpp:
(WebCore::ScrollView::setContentsScrollPosition): Add parameter AnimatedScroll.
(WebCore::ScrollView::setScrollPosition): Cancel the scroll animation before return.
- platform/ScrollView.h:
- rendering/RenderBox.cpp:
(WebCore::RenderBox::setScrollLeft):
(WebCore::RenderBox::setScrollTop):
(WebCore::RenderBox::setScrollPosition):
- rendering/RenderBox.h:
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollToXPosition):
(WebCore::RenderLayer::scrollToYPosition):
(WebCore::RenderLayer::setScrollPosition):
(WebCore::RenderLayer::scrollRectToVisible): Remove AutoscrollStatus.
(WebCore::RenderLayer::autoscroll):
(WebCore::RenderLayer::scrollToPosition): Deleted. Use setScrollPosition instead.
- rendering/RenderLayer.h:
- rendering/RenderListBox.cpp:
(WebCore::RenderListBox::setScrollLeft):
(WebCore::RenderListBox::setScrollTop):
- rendering/RenderListBox.h:
- rendering/RenderTextControlSingleLine.cpp:
(WebCore::RenderTextControlSingleLine::setScrollLeft):
(WebCore::RenderTextControlSingleLine::setScrollTop):
- rendering/RenderTextControlSingleLine.h:
- 9:53 PM Changeset in webkit [259845] by
-
- 23 edits in trunk/Source
IPC serialization of enums should serialize std::underlying_type instead of uint64_t
https://bugs.webkit.org/show_bug.cgi?id=210228
Patch by Alex Christensen <achristensen@webkit.org> on 2020-04-09
Reviewed by Chris Dumez and Darin Adler.
Source/WebCore:
No change in behavior, other than less memory and time spent in IPC code.
- html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawTextInternal):
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContextStateChange::dump const):
- platform/graphics/GraphicsContext.h:
- platform/graphics/ca/PlatformCALayer.cpp:
(WebCore::PlatformCALayer::drawRepaintIndicator):
- platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setPlatformTextDrawingMode):
- platform/graphics/cocoa/FontCascadeCocoa.mm:
(WebCore::shouldUseLetterpressEffect):
(WebCore::FontCascade::drawGlyphs):
- platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::drawText):
- rendering/TextPaintStyle.cpp:
(WebCore::updateGraphicsContext):
- rendering/TextPainter.cpp:
(WebCore::TextPainter::paintTextAndEmphasisMarksIfNeeded):
- rendering/svg/RenderSVGResourceGradient.cpp:
(WebCore::RenderSVGResourceGradient::applyResource):
- rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::applyResource):
- rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::applyResource):
Source/WebKit:
- Platform/IPC/Decoder.h:
(IPC::Decoder::decode):
(IPC::Decoder::operator>>):
(IPC::Decoder::decodeEnum):
- Platform/IPC/Encoder.h:
- Shared/cf/ArgumentCodersCF.cpp:
(IPC::encode):
(IPC::decode):
- 8:39 PM Changeset in webkit [259844] by
-
- 4 edits4 adds in trunk/LayoutTests
Import test for programmatic scrolling scrollend event
https://bugs.webkit.org/show_bug.cgi?id=210281
Reviewed by Frédéric Wang.
LayoutTests/imported/w3c:
Import test cases.
- web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll-expected.txt: Added.
- web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-programmatic-scroll.html: Added.
- web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView-expected.txt: Added.
- web-platform-tests/dom/events/scrolling/scrollend-event-fired-for-scrollIntoView.html: Added.
- web-platform-tests/dom/events/scrolling/w3c-import.log:
LayoutTests:
- tests-options.json:
- 7:11 PM Changeset in webkit [259843] by
-
- 186 edits2 moves1 add in trunk
[Cocoa] Simplify NSArray, NSDictionary, and NSNumber idioms throughout WebKit
https://bugs.webkit.org/show_bug.cgi?id=210138
Reviewed by Alex Christensen.
Source/JavaScriptCore:
- API/JSValue.mm:
(valueToObjectWithoutCopy): Use @().
(valueToNumber): Ditto.
- API/tests/testapi.mm:
(-[TestObject callback:]): Use @[], @(), and @{}.
(-[TextXYZ click]): Ditto.
(testObjectiveCAPIMain): Ditto.
Source/WebCore:
- Added createNSArray and makeVector.
- Use createNSArray and makeVector<String> in many places where we convert between NSArray and Vector, replacing multiple existing functions that were doing the same job before; later can use them even more.
- Use @[] many places where we create an autoreleased NSArray.
- Use @{} many places where we create an autoreleased NSDictionary.
- Use @() many places where we create an autoreleased NSNumber.
- PlatformMac.cmake: Moved Float/IntRectMac.mm to Float/IntRectCocoa.mm.
- SourcesCocoa.txt: Ditto.
- WebCore.xcodeproj/project.pbxproj: Ditto.
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(AXAttributeStringSetBlockquoteLevel): Use @().
(AXAttributeStringSetHeadingLevel): Use @().
(-[WebAccessibilityObjectWrapper textMarkerRangeForSelection]): Use @[].
(-[WebAccessibilityObjectWrapper _stringFromStartMarker:toEndMarker:attributed:]): Use @[].
(-[WebAccessibilityObjectWrapper elementsForRange:]): Use @[].
(-[WebAccessibilityObjectWrapper textMarkersForRange:]): Use @[].
- accessibility/mac/AXObjectCacheMac.mm:
(WebCore::textReplacementChangeDictionary): Use @().
- accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
(makeVectorElement): Aded overload for AccessibilitySearchKey.
(accessibilitySearchCriteriaForSearchPredicateParameterizedAttribute):
Use makeVector<AccessibilitySearchKey>.
- accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(accessibilityTextCriteriaForParameterizedAttribute): Use makeVector<String>.
(accessibilitySearchTextCriteriaForParameterizedAttribute): Use makeVector<String>.
(AXAttributeStringSetStyle): Use @().
(AXAttributeStringSetBlockquoteLevel): Use @().
(AXAttributeStringSetHeadingLevel): Use @().
(-[WebAccessibilityObjectWrapper accessibilityActionNames]): Use @[].
(convertStringsToNSArray): Deleted.
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
Use @(), @[], and createNSArray.
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
Ditto.
- bridge/objc/WebScriptObject.mm:
(+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
Use @().
- editing/cocoa/AlternativeTextUIController.mm:
(WebCore::AlternativeTextUIController::alternativesForContext):
Use makeVector<String>.
- editing/cocoa/HTMLConverter.mm:
(defaultParagraphStyle): Use @[].
(HTMLConverter::computedAttributesForElement): Use @().
(HTMLConverter::_processMetaElementWithName): Use @().
(HTMLConverter::_addTableForElement): Use @().
- page/ios/FrameIOS.mm:
(WebCore::Frame::interpretationsForCurrentRoot const): Use @[].
- platform/cocoa/MIMETypeRegistryCocoa.mm:
(WebCore::MIMETypeRegistry::getExtensionsForMIMEType): Use makeVector<String>.
- platform/graphics/FloatRect.h: Added makeNSArrayElement overload so we can
convert Vector<FloatRect> into NSArray<NSValue>.
- platform/graphics/IntRect.h: Similarly for IntRect.
- platform/graphics/avfoundation/MediaSelectionGroupAVFObjC.mm:
(WebCore::MediaSelectionGroupAVFObjC::updateOptions): Use createNSArray.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::mediaDescriptionForKind): Use @[].
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Use @().
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Use @().
(WebCore::MediaPlayerPrivateAVFoundationObjC::checkPlayability): Use @[].
(WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoOutput): Use @{} and @().
- platform/graphics/ca/cocoa/PlatformCAAnimationCocoa.mm:
(WebCore::PlatformCAAnimationCocoa::valueFunction const):
(WebCore::PlatformCAAnimationCocoa::setFromValue):
(WebCore::PlatformCAAnimationCocoa::copyFromValueFrom):
(WebCore::PlatformCAAnimationCocoa::setToValue):
(WebCore::PlatformCAAnimationCocoa::copyToValueFrom):
(WebCore::PlatformCAAnimationCocoa::setValues):
(WebCore::PlatformCAAnimationCocoa::copyValuesFrom):
(WebCore::PlatformCAAnimationCocoa::setKeyTimes):
(WebCore::PlatformCAAnimationCocoa::copyKeyTimesFrom):
(WebCore::PlatformCAAnimationCocoa::setTimingFunctions):
(WebCore::PlatformCAAnimationCocoa::copyTimingFunctionsFrom):
Use @(), @[], modern for loops, auto, and allocate with capacity.
- platform/graphics/ca/cocoa/PlatformCAFiltersCocoa.mm:
(WebCore::PlatformCAFilters::filterValueForOperation): Use @().
- platform/graphics/cocoa/FloatRectCocoa.mm: Moved from mac/FloatRectMac.mm.
(WebCore::makeNSArrayElement): Added so we can convert Vector<FloatRect>
into NSArray<NSValue>.
- platform/graphics/cocoa/IntRectCocoa.mm: Moved from mac/IntRectMac.mm.
(WebCore::makeNSArrayElement): Similarly for IntRect.
(WebCore::enclosingIntRect): Use clampTo to be consistent with what
enclosingIntRect(FloatRect) does (while fixing check-webkit-style complaint).
- platform/graphics/cocoa/WebGLLayer.mm:
(-[WebGLLayer display]): Add WebCore namespace prefix; needed depending on
how sources get unified (and was affecting my local build when it temporarily
had an additional source file).
(-[WebGLLayer allocateIOSurfaceBackingStoreWithSize:usingAlpha:]): Ditto.
(-[WebGLLayer bindFramebufferToNextAvailableSurface]): Ditto.
- platform/graphics/ios/FontCacheIOS.mm:
(WebCore::systemFontModificationAttributes): Use @().
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::getTypes): Use makeVector<String>.
(WebCore::createItemProviderRegistrationList): Use createNSArray.
(WebCore::PlatformPasteboard::updateSupportedTypeIdentifiers): Use createNSArray.
- platform/ios/WebItemProviderPasteboard.mm:
(-[WebItemProviderPasteboard setItemProviders:]): Use @[].
- platform/ios/wak/WAKView.mm:
(-[WAKView subviews]): Dittto.
- platform/mac/PlatformPasteboardMac.mm:
(WebCore::PlatformPasteboard::getTypes): Use makeVector<String>.
(WebCore::PlatformPasteboard::getPathnamesForType const): Use makeVector<String>.
(WebCore::PlatformPasteboard::addTypes): Use makeVector<String>.
(WebCore::PlatformPasteboard::setTypes): Use makeVector<String>.
- platform/mac/StringUtilities.h: Removed
webCoreStringVectorFromNSStringArray, replaced by makeVector<String>
- platform/mac/StringUtilities.mm:
(WebCore::webCoreStringVectorFromNSStringArray): Deleted.
- platform/mac/WebCoreNSURLExtras.mm: Removed unneeded include.
- platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.mm:
(WebCore::MediaRecorderPrivateWriter::setVideoInput): Use @().
- platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::setupCaptureSession): Use @().
- platform/network/cocoa/CookieCocoa.mm:
(WebCore::Cookie::operator NSHTTPCookie * _Nullable const): Use @().
- platform/network/cocoa/NetworkStorageSessionCocoa.mm:
(WebCore::NetworkStorageSession::setCookiesFromDOM const): Use @{}.
- platform/network/cocoa/ResourceRequestCocoa.mm:
(WebCore::ResourceRequest::doUpdatePlatformRequest): Use @YES/@NO.
Source/WebKit:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm: Remove uneeded include.
- Platform/mac/StringUtilities.mm: Ditto.
- PluginProcess/mac/PluginProcessMac.mm:
(WebKit::replacedNSConcreteTask_launch): Use makeVector<String>.
(WebKit::replacedNSWorkspace_launchApplicationAtURL_options_configuration_error):
Ditto.
- Shared/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
(WebKit::toSupportedNetworks): Deleted.
(WebKit::WebPaymentCoordinatorProxy::platformPaymentRequest): Use createNSArray.
- Shared/mac/PasteboardTypes.mm:
(WebKit::PasteboardTypes::forEditing): Use @[].
(WebKit::PasteboardTypes::forURL): Ditto.
(WebKit::PasteboardTypes::forImages): Ditto.
(WebKit::PasteboardTypes::forImagesWithArchive): Ditto.
(WebKit::PasteboardTypes::forSelection): Ditto.
- UIProcess/API/Cocoa/WKContentRuleListStore.mm:
(-[WKContentRuleListStore getAvailableContentRuleListIdentifiers:]): Use createNSArray.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _getActivePagesOriginsInWebProcessForTesting:completionHandler:]): Ditto.
- UIProcess/API/Cocoa/WKUserScript.mm:
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:userContentWorld:]):
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:associatedURL:userContentWorld:]):
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:contentWorld:]):
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:associatedURL:contentWorld:]):
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:associatedURL:contentWorld:deferRunningUntilNotification:]):
Use makeVector<String>.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _setupPageConfiguration:]): Use makeVector<String>.
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration _corsDisablingPatterns]): Use createNSArray.
(-[WKWebViewConfiguration _setCORSDisablingPatterns:]): Use makeVector<String>.
- UIProcess/API/Cocoa/WKWebViewTesting.mm:
(-[WKWebView _contentsOfUserInterfaceItem:]): Use @().
- UIProcess/API/Cocoa/_WKContentRuleListAction.mm:
(-[_WKContentRuleListAction notifications]): Use createNSArray.
- UIProcess/API/Cocoa/_WKCustomHeaderFields.mm:
(-[_WKCustomHeaderFields thirdPartyDomains]): Use createNSArray.
(-[_WKCustomHeaderFields setThirdPartyDomains:]): Use makeVector<String>.
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
(-[_WKProcessPoolConfiguration cachePartitionedURLSchemes]): Use createNSArray.
(-[_WKProcessPoolConfiguration setCachePartitionedURLSchemes:]): Use makeVector<String>.
(-[_WKProcessPoolConfiguration alwaysRevalidatedURLSchemes]): Use createNSArray.
(-[_WKProcessPoolConfiguration setAlwaysRevalidatedURLSchemes:]): Use makeVector<String>.
- UIProcess/API/Cocoa/_WKUserContentWorldInternal.h:
(API::toStringVector): Deleted.
- UIProcess/API/Cocoa/_WKUserStyleSheet.mm:
(-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:userContentWorld:]):
(-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:baseURL:userContentWorld:]):
Use makeVector<String>.
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::accessibilityAttributeValue): Use @[].
(WebKit::WebViewImpl::performDragOperation): Use makeVector<String>.
(WebKit::WebViewImpl::namesOfPromisedFilesDroppedAtDestination): Use @[].
(WebKit::WebViewImpl::collectKeyboardLayoutCommandsForEvent): Use @[].
- UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::launchProcess): Use createNSArray.
(WebKit::isJavaUpdaterURL): Use @[].
(WebKit::PluginProcessProxy::launchApplicationAtURL): Use @{} and createNSArray.
(WebKit::isSilverlightPreferencesURL): Use @[].
- UIProcess/WebAuthentication/Cocoa/HidService.mm:
(WebKit::HidService::HidService): Use @() and fixed an over-release mistake.
This code was doing adoptNS on the result of +[NSNumberWithInt:], which is incorrect.
- UIProcess/WebAuthentication/Mock/MockLocalConnection.mm:
(WebKit::MockLocalConnection::getAttestation const): Use @[].
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView textStylingAtPosition:inDirection:]): Use @().
(-[WKContentView requestRectsToEvadeForSelectionCommandsWithCompletionHandler:]): Use createNSArray.
(-[WKContentView _itemsForBeginningOrAddingToSessionWithRegistrationLists:stagedDragSource:]):
Fixed a wasteful call to autorelease where we are adding an item to a dictionary. Calling get
is more efficient and still correct.
- UIProcess/ios/forms/WKFileUploadPanel.mm:
(-[WKFileUploadPanel imagePickerController:didFinishPickingMediaWithInfo:]): Use @[].
- UIProcess/ios/forms/WKFormColorPicker.mm:
(-[WKColorMatrixView initWithFrame:colorMatrix:]): Removed uneeded RetainPtr
local variable.
- UIProcess/mac/CorrectionPanel.mm:
(WebKit::CorrectionPanel::show): Use createNSArray.
- UIProcess/mac/TextCheckerMac.mm:
(WebKit::TextChecker::updateSpellingUIWithGrammarString): Use createNSArray.
(WebKit::TextChecker::getGuessesForWord): Use makeVector<String>.
- UIProcess/mac/WKPrintingView.mm:
(-[WKPrintingView _adjustPrintingMarginsForHeaderAndFooter]): Use @().
- UIProcess/mac/WKTextFinderClient.mm:
(arrayFromRects): Deleted.
(-[WKTextFinderClient didFindStringMatchesWithRects:didWrapAround:]): Use createNSArray.
- UIProcess/mac/WebDataListSuggestionsDropdownMac.mm:
(-[WKDataListSuggestionsController notifyAccessibilityClients:]): Use @{}
and fix a bug where this was creating a backwards dictionary. So this never
could have been working before, making me wonder how we test it.
- UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::searchTheWeb): Use @[].
- WebProcess/InjectedBundle/API/mac/WKDOMInternals.h: Removed toNSArray.
- WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
(WebKit::toNSArray): Deleted.
- WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
(-[WKDOMNode textRects]): Use createNSArray.
- WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
(-[WKDOMRange textRects]): Ditto.
- WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
(WebKit::InjectedBundle::setBundleParameter): Use @{}.
- WebProcess/Plugins/Netscape/mac/PluginProxyMac.mm:
(WebKit::makeRenderLayer): Use @[].
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::writeItemsToPasteboard): Use makeVector<String>.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::applicationDidEnterBackground): Use @().
- WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
(WebKit::TiledCoreAnimationDrawingArea::suspendPainting): Use @{}.
(WebKit::TiledCoreAnimationDrawingArea::resumePainting): Use @{}.
- WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm:
Removed an unneeded include.
- WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm: Ditto.
(-[WKAccessibilityWebPageObject accessibilityActionNames]): Use @[].
(-[WKAccessibilityWebPageObject accessibilityChildren]): Use @[].
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::getActivePagesOriginsForTesting): Use makeVector<String>.
Source/WebKitLegacy/ios:
- WebCoreSupport/WebChromeClientIOS.mm:
(WebChromeClientIOS::runOpenPanel): Use createNSArray.
- WebCoreSupport/WebVisiblePosition.mm:
(-[WebVisiblePosition enclosingRangeWithDictationPhraseAlternatives:]):
Use createNSArray.
- WebCoreSupport/WebVisiblePositionInternal.h:
Added #if so that this correctly doesn't compile anything on Mac.
- WebView/WebPDFViewIOS.mm:
(+[WebPDFView supportedMIMETypes]): Use @[].
Source/WebKitLegacy/mac:
- DOM/DOM.mm:
(kit): Deleted overload that takes Vector<IntRect>.
(-[DOMNode textRects]): Use createNSArray.
(-[DOMRange textRects]): Ditto.
- DOM/ExceptionHandlers.mm:
(raiseDOMErrorException): Use @().
- History/WebBackForwardList.mm:
(-[WebBackForwardList dictionaryRepresentation]): Use @{}.
- History/WebHistory.mm:
(+[WebHistoryPrivate initialize]): Use @{}.
(-[WebHistory _sendNotification:entries:]): Use @{}.
- History/WebHistoryItem.mm:
(-[WebHistoryItem initFromDictionaryRepresentation:]): Use makeVector<String>.
(-[WebHistoryItem dictionaryRepresentation:]): Use createNSArray and @().
- History/WebURLsWithTitles.m:
(+[WebURLsWithTitles arrayWithIFURLsWithTitlesPboardType]): Use @[].
(+[WebURLsWithTitles writeURLs:andTitles:toPasteboard:]): Use @[].
- Misc/WebCache.mm:
(+[WebCache statistics]): Use @[], @{}, and @().
- Misc/WebCoreStatistics.mm:
(+[WebCoreStatistics memoryStatistics]): Ditto.
- Misc/WebKitErrors.m:
(-[NSError _webkit_initWithDomain:code:URL:]): Use @().
(+[NSError _registerWebKitErrors]): Use @().
(-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]): Use @().
- Misc/WebKitNSStringExtras.mm:
(-[NSString _web_drawAtPoint:font:textColor:]): Use @{}.
(-[NSString _web_widthWithFont:]): Use @{}.
- Misc/WebNSFileManagerExtras.mm: Removed unneeded include.
- Misc/WebNSPasteboardExtras.mm:
(+[NSPasteboard _web_dragTypesForURL]): Use @[].
(-[NSPasteboard _web_writeURL:andTitle:types:]): Use @[].
(+[NSPasteboard _web_setFindPasteboardString:withOwner:]): Use @[].
- Misc/WebNSURLExtras.mm: Removed unneeded include.
- Plugins/Hosted/NetscapePluginHostManager.mm:
(WebKit::NetscapePluginHostManager::spawnPluginHost): Use @{}.
- Plugins/Hosted/NetscapePluginHostProxy.mm:
(WKPCIdentifierInfo): Use @().
- Plugins/Hosted/NetscapePluginInstanceProxy.mm:
(WebKit::NetscapePluginInstanceProxy::addValueToArray): Use @().
- Plugins/Hosted/WebHostedNetscapePluginView.mm: Removed unneeded include.
- Plugins/WebBasePluginPackage.mm: Ditto.
- Plugins/WebPluginContainerCheck.mm:
(-[WebPluginContainerCheck _actionInformationWithURL:]): Use @{}.
- Plugins/WebPluginDatabase.mm:
(+[WebPluginDatabase _defaultPlugInPaths]): Use @[].
- Storage/WebDatabaseManager.mm:
(-[WebDatabaseManager databasesWithOrigin:]): Use createNSArray.
- WebCoreSupport/CorrectionPanel.mm:
(CorrectionPanel::show): Use createNSArray.
- WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::addMessageToConsole): Use @().
- WebCoreSupport/WebEditorClient.mm:
(attributesForAttributedStringConversion): Use @().
(WebEditorClient::getGuessesForWord): Use makeVector<String>.
- WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::actionDictionary const): Use @().
(kit): Deleted overload that takes Vector<String>.
(pluginView): Use @{}.
(WebFrameLoaderClient::createPlugin): Use createNSArray, @{}, and @().
(WebFrameLoaderClient::createJavaAppletWidget): Use createNSArray.
- WebCoreSupport/WebOpenPanelResultListener.mm:
(-[WebOpenPanelResultListener chooseFilenames:]): Use makeVector<String>.
(-[WebOpenPanelResultListener chooseFilename:displayString:iconImage:]): Use @[].
(-[WebOpenPanelResultListener chooseFilenames:displayString:iconImage:]): Use makeVector<String>.
- WebCoreSupport/WebSelectionServiceController.mm:
(WebSelectionServiceController::handleSelectionServiceClick):
Comment out an unused argument.
- WebView/WebFrame.mm:
(-[WebFrame _rectsForRange:]): Use createNSArrray.
(-[WebFrame _computePageRectsWithPrintScaleFactor:pageSize:]): Use createNSArray and @[].
(-[WebFrame childFrames]): Use @[].
- WebView/WebHTMLView.mm:
(+[WebHTMLView _selectionPasteboardTypes]): Use @[].
(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use @[].
(-[WebHTMLView knowsPageRange:]): Use @[].
(-[WebHTMLView accessibilityAttributeValue:]): Use @[].
(-[WebHTMLView copyFont:]): Use @[].
(-[WebHTMLView _interpretKeyEvent:savingCommands:]): Use @[].
(-[WebHTMLView selectionTextRects]): Use createNSArray.
(-[WebHTMLView rectsForTextMatches]): Use createNSArray and @[].
- WebView/WebPDFRepresentation.mm: Removed unneeded include.
(+[WebPDFRepresentation postScriptMIMETypes]): Use @[].
(+[WebPDFRepresentation supportedMIMETypes]): Use @[].
- WebView/WebPDFView.mm:
(-[WebPDFView elementAtPoint:]): Use @{} and @().
(-[WebPDFView viewState]): Use @().
(-[WebPDFView selectionTextRects]): Use @[].
(-[WebPDFView pasteboardTypesForSelection]): Use @[].
(-[WebPDFView _menuItemsFromPDFKitForEvent:]): Use @().
(-[WebPDFView _openWithFinder:]): Use @{} and @().
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Use @().
(-[WebPreferences _setUnsignedIntValue:forKey:]): Use @().
(+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Use @().
(-[WebPreferences setStorageBlockingPolicy:]): Use @{} and @().
- WebView/WebScriptDebugger.mm:
(WebScriptDebugger::sourceParsed): Use @().
- WebView/WebTextCompletionController.mm:
(-[WebTextCompletionController _placePopupWindow:]): Use @{}.
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Use makeVector<String>.
(-[WebView _contentsOfUserInterfaceItem:]): Use @().
(toStringVector): Deleted.
(+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:injectedFrames:]):
Use makeVector<String>.
(+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:injectedFrames:]):
Use makeVector<String>.
(-[WebView _elementAtWindowPoint:]): Use @{}.
(-[WebView pasteboardTypesForSelection]): Use @[].
(-[WebView pasteboardTypesForElement:]): Use @[].
(-[WebView rectsForTextMatches]): Use @[].
(-[WebView _searchWithGoogleFromMenu:]): Use @[].
(-[WebView _setFontWhitelist:]): Use makeVector<String>.
Source/WTF:
- WTF.xcodeproj/project.pbxproj: Added VectorCocoa.h.
- wtf/PlatformMac.cmake: Ditto.
- wtf/cocoa/NSURLExtras.mm: Removed unneeded include.
- wtf/cocoa/URLCocoa.mm: Ditto.
- wtf/cocoa/VectorCocoa.h: Added. Contains createNSArray and makeVector
function templates for converting NSArray to and from Vector.
- wtf/text/WTFString.h: Added makeNSArrayElement and makeVectorElement
functions, making createNSArray and makeVector compatible with String.
- wtf/text/cocoa/StringCocoa.mm:
(WTF::makeNSArrayElement): Added.
(WTF::makeVectorElement): Added.
Tools:
- DumpRenderTree/AccessibilityController.h: Remove use of NotificationHandler
type; it's just "id".
- DumpRenderTree/AccessibilityUIElement.cpp:
(convertElementsToObjectArray): Moved this up in the file, removed unneeded
use of JSValueToObject and unused exception argument.
(elementsForRangeCallback): Use convertElementsToObjectArray.
(columnHeadersCallback): Updated for removed exception argument.
(rowHeadersCallback): Ditto.
(uiElementArrayAttributeValueCallback): Ditto.
- DumpRenderTree/AccessibilityUIElement.h: Changed to use RetainPtr.
- DumpRenderTree/TestNetscapePlugIn/PluginObjectMac.mm:
(createCoreAnimationLayer): Use @{}.
- DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::AccessibilityUIElement): Removed some unneeded
code now that we use RetainPtr.
(AccessibilityUIElement::~AccessibilityUIElement): Deleted.
(AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use @[].
(AccessibilityUIElement::textMarkerRangeForMarkers): Use @[].
(AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers): Use @[].
- DumpRenderTree/ios/TextInputControllerIOS.m:
(-[TextInputController markedRange]): Use @[].
- DumpRenderTree/mac/AccessibilityCommonMac.mm:
(searchPredicateParameterizedAttributeForSearchCriteria): Tweak a little.
- DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
(-[NSString createJSStringRef]): Deleted. Duplicate of a method already
implemented in anothe file.
- DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(makeVectorElement): Added overloads to make both
makeVector<AccessibilityTextMarkerRange> and
makeVector<AccessibilityUIElement> work.
(AccessibilityUIElement::AccessibilityUIElement): Removed some unneeded
code now that we use RetainPtr.
(convertVectorToObjectArray): Removed unneeded use of JSValueToObject
and unneeded exception argument.
(convertNSArrayToVector): Deleted.
(AccessibilityUIElement::getLinkedUIElements): Use
makeVector<AccessibilityUIElement>.
(AccessibilityUIElement::getDocumentLinks): Ditto.
(AccessibilityUIElement::getChildren): Ditto.
(AccessibilityUIElement::getChildrenWithRange): Ditto.
(AccessibilityUIElement::rowHeaders const): Ditto.
(AccessibilityUIElement::columnHeaders const): Ditto.
(AccessibilityUIElement::uiElementArrayAttributeValue const): Ditto.
(AccessibilityUIElement::role): Updated since m_element is a RetainPtr.
(AccessibilityUIElement::subrole): Ditto.
(AccessibilityUIElement::roleDescription): Ditto.
(AccessibilityUIElement::computedRoleString): Ditto.
(AccessibilityUIElement::title): Ditto.
(AccessibilityUIElement::description): Ditto.
(AccessibilityUIElement::orientation const): Ditto.
(AccessibilityUIElement::stringValue): Ditto.
(AccessibilityUIElement::language): Ditto.
(AccessibilityUIElement::helpText const): Ditto.
(AccessibilityUIElement::lineForIndex): Use @().
(AccessibilityUIElement::rangeForLine): Use @().
(AccessibilityUIElement::searchTextWithCriteria): Use
makeVector<AccessibilityTextMarkerRange>.
(AccessibilityUIElement::attributesOfColumnHeaders): Use
makeVector<AccessibilityUIElement>.
(AccessibilityUIElement::attributesOfRowHeaders): Ditto.
(AccessibilityUIElement::attributesOfColumns): Ditto.
(AccessibilityUIElement::attributesOfRows): Ditto.
(AccessibilityUIElement::attributesOfVisibleCells): Ditto.
(AccessibilityUIElement::cellForColumnAndRow): Use @[] and @().
(AccessibilityUIElement::setSelectedChild const): Use @[].
(AccessibilityUIElement::setSelectedChildAtIndex const): Use @[].
(AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
Use @{}, @YES, and @NO.
(AccessibilityUIElement::textMarkerRangeForMarkers): Use @[].
- DumpRenderTree/mac/DumpRenderTree.mm:
(addTestPluginsToPluginSearchPath): Use @[].
(resetWebViewToConsistentStateBeforeTesting): Use @[].
- DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
(-[DumpRenderTreePasteboard declareType:owner:]): Use @[].
- DumpRenderTree/mac/EventSendingController.mm:
(-[EventSendingController beginDragWithFiles:]): Use @().
(-[EventSendingController sentTouchEventOfType:]): Use @().
- DumpRenderTree/mac/MockWebNotificationProvider.mm:
(-[MockWebNotificationProvider cancelNotification:]): Use @[].
- DumpRenderTree/mac/ObjCController.m:
(-[ObjCController objectOfClass:]): Use @().
(-[ObjCController arrayOfString]): Use @[].
(-[ObjCController testWrapperRoundTripping:]): Use @().
(-[ObjCController testArray]): Use @[].
- DumpRenderTree/mac/TestRunnerMac.mm:
(originsArrayToJS): Removed unneeded use of JSValueToObject.
- DumpRenderTree/mac/TextInputControllerMac.m:
(-[TextInputController markedRange]): Use @[] and @().
(-[TextInputController selectedRange]): Use @[] and @().
(-[TextInputController firstRectForCharactersFrom:length:]):
Use @[] and @().
(-[TextInputController dictatedStringWithPrimaryString:alternative:alternativeOffset:alternativeLength:]):
Use @[].
(-[TextInputController interpretKeyEvents:withSender:]): Use @[].
- DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptControllerMac::copyText): Use [].
- DumpRenderTree/win/AccessibilityUIElementWin.cpp: Deleted an
unneeded copy constructor and destructor.
- TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
(-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Use @{}.
- TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm:
(toVector): Deleted.
(-[ContentRuleListNotificationDelegate _webView:contentRuleListWithIdentifier:performedAction:forURL:]):
Use makeVector<String>.
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
(TestWebKitAPI::TEST): Use @[].
- TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
(writeImageDataToPasteboard): Use @[] and @{}.
(writeBundleFileToPasteboard): Use @[].
- TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
(TestWebKitAPI::TEST): Use @[].
- TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
(TestWebKitAPI::TEST): Use @[].
- TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST): Use @[].
- TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
(TestWebKitAPI::TEST): Use @[].
- TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST): Use @[].
- TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(runWebsiteDataStoreCustomPaths): Use @[].
- TestWebKitAPI/Tests/mac/WebViewCanPasteURL.mm:
(TestWebKitAPI::TEST): Use @[].
- TestWebKitAPI/Tests/mac/WebViewCanPasteZeroPng.mm:
(TestWebKitAPI::TEST): Use @[].
- TestWebKitAPI/Tests/mac/WebViewDidCreateJavaScriptContext.mm:
(-[DidCreateJavaScriptContextFrameLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
Use @[].
- TestWebKitAPI/ios/mainIOS.mm:
(main): Use @{}.
- TestWebKitAPI/mac/InjectedBundleControllerMac.mm:
(TestWebKitAPI::InjectedBundleController::platformInitialize): Use @{} and @().
- TestWebKitAPI/mac/mainMac.mm:
(main): Use {}.
- WebKitTestRunner/InjectedBundle/AccessibilityController.h:
Use id instead of NotificationHandler.
- WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.h:
Use id for PlatformTextMarkerRange. Added an overload of makeVectorElement
to make makeVector<RefPtr<AccessibilityTextMarkerRange>> work.
- WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
Use RetainPtr. Added an overload of makeVectorElement to make
makeVector<RefPtr<AccessibilityUIElement>> work.
- WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
Removed unneeded include.
- WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::convertNSArrayToVector): Deleted.
(WTR::AccessibilityUIElement::AccessibilityUIElement): Simplified
since we use RetainPtr.
(WTR::AccessibilityUIElement::~AccessibilityUIElement): Ditto.
(WTR::convertElementsToObjectArray): Removed unneeded use of
JSValueToObject.
(WTR::AccessibilityUIElement::elementsForRange): Use
makeVector<RefPtr<AccessibilityUIElement>>.
(WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
Use @[].
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Use @[].
(WTR::AccessibilityUIElement::textMarkerRangeMatchesTextNearMarkers):
- WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
(WTR::InjectedBundle::platformInitialize): Use @{}.
- WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::AccessibilityUIElement): Simplified
since we use RetainPtr.
(WTR::AccessibilityUIElement::~AccessibilityUIElement): Ditto.
(WTR::convertNSArrayToVector): Deleted.
(WTR::AccessibilityUIElement::getLinkedUIElements): Use
makeVector<RefPtr<AccessibilityUIElement>>.
(WTR::AccessibilityUIElement::getDocumentLinks): Ditto.
(WTR::AccessibilityUIElement::getUIElementsWithAttribute const): Ditto.
(WTR::AccessibilityUIElement::getChildren): Ditto.
(WTR::AccessibilityUIElement::getChildrenWithRange): Ditto.
(WTR::AccessibilityUIElement::rowHeaders const): Ditto.
(WTR::AccessibilityUIElement::columnHeaders const): Ditto.
(WTR::AccessibilityUIElement::allAttributes): Updated since m_element
is a RetainPtr.
(WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue): Ditto.
(WTR::AccessibilityUIElement::role): Ditto.
(WTR::AccessibilityUIElement::subrole): Ditto.
(WTR::AccessibilityUIElement::roleDescription): Ditto.
(WTR::AccessibilityUIElement::computedRoleString): Ditto.
(WTR::AccessibilityUIElement::title): Ditto.
(WTR::AccessibilityUIElement::description): Ditto.
(WTR::AccessibilityUIElement::orientation const): Ditto.
(WTR::AccessibilityUIElement::stringValue): Ditto.
(WTR::AccessibilityUIElement::language): Ditto.
(WTR::AccessibilityUIElement::helpText const): Ditto.
(WTR::AccessibilityUIElement::lineForIndex): Use @().
(WTR::AccessibilityUIElement::rangeForLine): Use @().
(WTR::AccessibilityUIElement::searchTextWithCriteria): Use
makeVector<RefPtr<AccessibilityTextMarkerRange>>.
(WTR::AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
(WTR::AccessibilityUIElement::attributesOfRowHeaders): Ditto.
(WTR::AccessibilityUIElement::attributesOfColumns): Ditto.
(WTR::AccessibilityUIElement::attributesOfRows): Ditto.
(WTR::AccessibilityUIElement::attributesOfVisibleCells): Ditto.
(WTR::AccessibilityUIElement::cellForColumnAndRow): Use @[] and @().
(WTR::AccessibilityUIElement::setSelectedChild const): Use @[].
(WTR::AccessibilityUIElement::setSelectedChildAtIndex const): Use @[].
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Use @[].
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveAllStorageAccessEntries): Take Vector&&.
(WTR::TestInvocation::didReceiveWebViewCategory): Take String&&.
- WebKitTestRunner/TestInvocation.h: Updated for the above.
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaPlatformInitialize): Use @{}and @().
(WTR::TestController::getAllStorageAccessEntries): Use makeVector<String>.
(WTR::TestController::loadedThirdPartyDomains): Use makeVector<String>.
(WTR::TestController::getWebViewCategory): Update to pass String&&.
(WTR::TestController::setAllowedMenuActions): Use createNSArray.
- WebKitTestRunner/ios/HIDEventGenerator.mm:
(-[HIDEventGenerator interpolatedEvents:]): Use @().
- WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::changeWindowScaleIfNeeded): Use @{} and @().
- WebKitTestRunner/mac/TestControllerMac.mm: Removed unneeded include.
- WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptControllerMac::copyText): Use @[].
- WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
(-[WebKitTestRunnerPasteboard declareType:owner:]): Use @[].
- 5:40 PM Changeset in webkit [259842] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Storage: should be able to set a cookie with no value
https://bugs.webkit.org/show_bug.cgi?id=210237
Reviewed by Timothy Hatcher.
- UserInterface/Views/CookiePopover.js:
(WI.CookiePopover.prototype.get serializedData):
Require an explicitly setname
instead of falling back to theplaceholder
. Allow the
value
to be an empty string.
(WI.CookiePopover.prototype.show):
Don't have default placeholder values forname
orvalue
for the reasons above.
Drive-by: if an existingWI.Cookie
is provided, use itsSameSite
value.
- UserInterface/Views/CookiePopover.css: Added.
(.popover .cookie-popover-content > table > tr > td > input:matches([type="text"], [type="datetime-local"]):matches(:invalid, .invalid)): Added.
(.popover .cookie-popover-content > table > tr > td > input:matches([type="text"], [type="datetime-local"]).invalid): Deleted.
Instead of changing the text color, change the border color.
- 5:28 PM Changeset in webkit [259841] by
-
- 2 edits in trunk/Source/JavaScriptCore
Don't emit the rhs twice in
AssignResolveNode
https://bugs.webkit.org/show_bug.cgi?id=210312
Reviewed by Yusuke Suzuki.
- bytecompiler/NodesCodegen.cpp:
(JSC::AssignResolveNode::emitBytecode):
- 4:58 PM Changeset in webkit [259840] by
-
- 4 edits in trunk/Source/WebKit
Popovers are dismissed immediately when they try and bring up the keyboard.
https://bugs.webkit.org/show_bug.cgi?id=210230
<rdar://problem/60385504>
Reviewed by Darin Adler.
When popovers use keyboards we dismiss them because the
web view loses firstResponder. We already have ways of
retaining focus when we lose first responde, so extend that
code to cover the case where a keyboard comes up in a popover.
We are also callling controlBeginEditing twice on refocusing a
popover due to behaviour with touch and syntheticClick, so
keep up from presenting the popover twice, and allow for the focus
count to be correclty incremented and decremented.
- UIProcess/ios/WKContentViewInteraction.h:
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView preserveFocus]):
(-[WKContentView releaseFocus]):
- UIProcess/ios/forms/WKFormInputControl.mm:
(-[WKDateTimePopover popoverWasDismissed:]):
(-[WKDateTimePopover controlBeginEditing]):
(-[WKDateTimePopover controlEndEditing]):
- 4:45 PM Changeset in webkit [259839] by
-
- 2 edits in trunk/Source/WebCore
[ macOS debug wk2 ] REGRESSION(r259761): ASSERTION FAILED: !needsLayout() on fast/events/scroll-subframe-in-rendering-update.html
https://bugs.webkit.org/show_bug.cgi?id=210278
<rdar://problem/61517389>
Reviewed by Simon Fraser.
Add a comment to clarify that the needsLayout() check during EventRegion painting in
RenderWidget::paint() is a workaround for <https://bugs.webkit.org/show_bug.cgi?id=210278>:
it is needed because event regions are only stored on compositing layers. Following r259761
a non-composited frames can request their enclosing compositing layer to update the event
region on their behalf. Outside of this special request (tracked via RenderView::needsEventRegionUpdateForNonCompositedFrame())
we want to do what the code did pre-r259761 and bail out in RenderWidget::paint() when
asked to perform an event region paint. We cannot depend on RenderView::needsEventRegionUpdateForNonCompositedFrame()
though since it could be have been set by a deep nested non-composited child frame and
an intermediary child frame along the path may have had its layout dirtied. That is why
we check needsLayout(). Eventually the needsEventRegionUpdateForNonCompositedFrame() bit
will be serviced (and turned off) once all frames along the path to the originally requesting
frame lay out.
- rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paint):
- 4:30 PM Changeset in webkit [259838] by
-
- 1 delete in tags/Safari-609.2.4
Delete tag.
- 4:19 PM Changeset in webkit [259837] by
-
- 11 edits in branches/safari-609-branch/Source
Revert r259689. rdar://problem/61269751
- 3:56 PM Changeset in webkit [259836] by
-
- 1 copy in tags/Safari-609.2.4
Tag Safari-609.2.4.
- 3:49 PM Changeset in webkit [259835] by
-
- 8 edits2 adds in trunk
[JSC] ModuleEnvironment do not have JSGlobalLexicalEnvironment as its upper scope
https://bugs.webkit.org/show_bug.cgi?id=193347
Reviewed by Tadeu Zagallo.
JSTests:
- stress/global-lexical-environment-access-from-module.js: Added.
(shouldBe):
(import.string_appeared_here.then):
- stress/resources/global-lexical-environment-access-from-module-child.js: Added.
(export.read):
(export.write):
LayoutTests/imported/w3c:
- web-platform-tests/html/semantics/scripting-1/the-script-element/module/inline-async-execorder-expected.txt:
Source/JavaScriptCore:
The upper scope of module scope should be global lexical environment instead of global object.
This patch fixes it to allow modules to access global lexical environment's variables.
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::notifyLexicalBindingUpdate):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
- runtime/JSModuleEnvironment.h:
- runtime/JSModuleRecord.cpp:
(JSC::JSModuleRecord::instantiateDeclarations):
- 3:17 PM Changeset in webkit [259834] by
-
- 2 edits in trunk/Tools
WKAccessibilityRootObject must run on the main thread.
https://bugs.webkit.org/show_bug.cgi?id=210306
Reviewed by Chris Fleizach.
WKAccessibilityRootObject needs to run on the main thread because makes
calls into Document and Page. So reverting the change to make it run on
the AX thread. This means that we cannot simulate getting the root
object on the secondary thread at the moment, as it would with an
accessibility client that supports isolated tree mode. So it is a
tradeoff made for the time being to be able to make progress in testing
the rest of the functionality of AXIsolatedTree/Object.
- WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
(WTR::AccessibilityController::accessibleElementById):
- 3:08 PM Changeset in webkit [259833] by
-
- 12 edits in trunk
Add using WTF::isInBounds to CheckedArithmetic.h
<https://webkit.org/b/210299>
Reviewed by Darin Adler.
Source/WebCore:
- fileapi/Blob.cpp:
(WebCore::Blob::size const):
- page/PointerCaptureController.cpp:
(WebCore::PointerCaptureController::elementWasRemoved):
- platform/graphics/ImageSource.cpp:
(WebCore::ImageSource::cacheNativeImageAtIndex):
- platform/graphics/gpu/cocoa/GPUBindGroupMetal.mm:
(WebCore::tryGetResourceAsBufferBinding):
- Remove WTF:: prefix from isInBounds().
Source/WebKit:
- Platform/IPC/ArgumentCoders.h:
- Shared/UserData.cpp:
(WebKit::UserData::decode):
- Remove WTF:: prefix from isInBounds().
Source/WTF:
- wtf/CheckedArithmetic.h:
- Add
using WTF::isInBounds
statement so this function may be used unprefixed outside the WTF project.
Tools:
- TestWebKitAPI/Tests/WTF/CheckedArithmeticOperations.cpp:
(TestWebKitAPI::TEST):
- Remove WTF:: prefix from isInBounds().
- 2:55 PM Changeset in webkit [259832] by
-
- 3 edits in trunk/Source/WebCore
Fix for crash in test accessibility/mac/aria-grid-with-strange-hierarchy.html in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=210295
Reviewed by Chris Fleizach.
Covered by accessibility/mac/aria-grid-with-strange-hierarchy.html.
- When AXIsolatedTree::applyPendingChanges encounters a change for an
already existing object, the existing object is discarded and the new
object replaces it in the nodes map. The existing and new objects must
have the same platform wrapper. Thus the wrapper needs to be detached
from the existing object about to be discarded, and re-attached to the
new object. We were missing the re-attachment, and hence the crash when
the wrapper tries to access its underlying object.
- In addition, moved the LockHolder in a couple of intances to before
AXIsolatedTree::nodeForID, because this method accesses a member
variable used in both threads.
- Added stricter assert checks to catch problems with the management of
objects and wrappers during tree updates.
- accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::updateNode):
(WebCore::AXIsolatedTree::updateChildren):
(WebCore::AXIsolatedTree::applyPendingChanges):
- accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
(-[WebAccessibilityObjectWrapperBase attachIsolatedObject:]):
- 2:50 PM Changeset in webkit [259831] by
-
- 3 edits in trunk/LayoutTests
[iOS]: New test landed for r259762 landed broken: editing/editable-region/hit-test-overlap.html
https://bugs.webkit.org/show_bug.cgi?id=210305
<rdar://problem/61539886>
Fix up the test. All sub-tests are expected to find editable elements. This is a result
of a last minute realization that I need to iterate over all the hit views instead of just
the frontmost one because the search rect can overlap multiple layers: See "iterate over all
the hit views" in <https://bugs.webkit.org/show_bug.cgi?id=209888#c21>. It is because of this
requirement that WebKit::mayContainEditableElementsInRect() can return a false positive: return
true that the search rect contains an editable element even though that element may be occluded
by a higher z-order element (composited or not). False positives are acceptable. Thouhg false
negatives are not.
- editing/editable-region/hit-test-overlap-expected.txt:
- editing/editable-region/hit-test-overlap.html:
- 2:45 PM Changeset in webkit [259830] by
-
- 18 edits6 adds in trunk
REGRESSION: CSS animations inside an embedded SVG image do not animate
https://bugs.webkit.org/show_bug.cgi?id=209370
Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-04-09
Reviewed by Simon Fraser.
Source/WebCore:
If WebAnimation is enabled and the SVGImage includes CSS animations, the
DocumentTimeline is added to the SVGDocument of the embedded SVGImage.
Because the SVGImage has its own Page the RenderingUpdate is scheduled
and the updateRendering steps run in this Page.
The Page of the SVGImage is inactive such that scheduling RenderingUpdate
fails; therefore the updateRendering steps never run and the CSS animation
never advances.
The fix is:
1) Scheduling the RenderingUpdate: This has to happen in the Page which
contains the renderer of the SVGImage. Because DocumentTimeline is
added to SVGDocument, this scheduling will go through these hubs:
- DocumentTimeline
- Page
- ChromeClient -> SVGImageChromeClient
- SVGImage
- ImageObserver -> CachedImageObserver
- CachedImage
- CachedImageClient -> RenderElement
- Page
2) Running the updateRendering steps: Each document in the Page will
enumerate its cached SVGImages. The updateRendering of the Page of
each SVGImage will be called.
To make enumerating the cached SVGImages of a Document faster, the URL
of the cached SVGImage will be added to the cachedSVGImagesURLs of
CachedResourceLoader when notifyFinished() is called for associated
CachedImage.
Tests: svg/animations/css-animation-background-svg.html
svg/animations/css-animation-embedded-svg.html
svg/animations/css-animation-hover-svg.html
- animation/DocumentTimeline.cpp:
(WebCore::DocumentTimeline::scheduleAnimationResolution):
(WebCore::DocumentTimeline::updateAnimationsAndSendEvents):
- html/ImageBitmap.cpp:
- loader/cache/CachedImage.cpp:
(WebCore::CachedImage::hasSVGImage const):
(WebCore::CachedImage::CachedImageObserver::scheduleTimedRenderingUpdate):
(WebCore::CachedImage::scheduleTimedRenderingUpdate):
- loader/cache/CachedImage.h:
- loader/cache/CachedImageClient.h:
(WebCore::CachedImageClient::scheduleTimedRenderingUpdate):
- loader/cache/CachedResourceLoader.cpp:
(WebCore::isSVGImageCachedResource):
(WebCore::cachedResourceSVGImage):
(WebCore::CachedResourceLoader::notifyFinished):
(WebCore:: const):
- loader/cache/CachedResourceLoader.h:
- page/ChromeClient.h:
(WebCore::ChromeClient::scheduleTimedRenderingUpdate):
- page/Page.cpp:
(WebCore::Page::scheduleTimedRenderingUpdate):
(WebCore::Page::updateRendering):
- page/Page.h:
- platform/graphics/ImageObserver.h:
- rendering/RenderElement.cpp:
(WebCore::RenderElement::notifyFinished):
(WebCore::RenderElement::scheduleTimedRenderingUpdate):
- rendering/RenderElement.h:
- rendering/RenderImage.cpp:
(WebCore::RenderImage::notifyFinished):
- svg/graphics/SVGImage.h:
- svg/graphics/SVGImageClients.h:
LayoutTests:
- svg/animations/css-animation-background-svg-expected.html: Added.
- svg/animations/css-animation-background-svg.html: Added.
- svg/animations/css-animation-embedded-svg-expected.html: Added.
- svg/animations/css-animation-embedded-svg.html: Added.
- svg/animations/css-animation-hover-svg-expected.html: Added.
- svg/animations/css-animation-hover-svg.html: Added.
- 2:31 PM Changeset in webkit [259829] by
-
- 40 edits in trunk
Remove legacy X-WebKit-CSP header support
https://bugs.webkit.org/show_bug.cgi?id=210256
Source/WebCore:
<rdar://problem/60634363>
Reviewed by Geoffrey Garen.
Supporting this header is causes compatibly issues for some sites
and they appear to be misconfigured. Additionally, no other
browser has supported these headers in many years. This patch
removes all support for the legacy X-WebKit-CSP header.
- dom/Document.cpp:
(WebCore::Document::processHttpEquiv):
- page/csp/ContentSecurityPolicyDirectiveList.cpp:
(WebCore::ContentSecurityPolicyDirectiveList::ContentSecurityPolicyDirectiveList):
- page/csp/ContentSecurityPolicyResponseHeaders.cpp:
(WebCore::ContentSecurityPolicyResponseHeaders::ContentSecurityPolicyResponseHeaders):
- page/csp/ContentSecurityPolicyResponseHeaders.h:
- platform/network/HTTPHeaderNames.in:
- platform/network/ResourceResponseBase.cpp:
(WebCore::isSafeCrossOriginResponseHeader):
LayoutTests:
Reviewed by Geoffrey Garen.
Fix tests so they ensure we don't respect legacy CSP headers anymore.
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-get-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-get-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-javascript-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-javascript-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/form-action-src-redirect-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-invalidnonce-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-invalidnonce.html:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2.php:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2.php:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce.html:
- 2:20 PM Changeset in webkit [259828] by
-
- 2 edits in trunk/JSTests
Unreviewed, skip JSTests/stress/intl-canonicalize-locale-list-error-oom.js if memoryLimited
<rdar://problem/61533598>
- stress/intl-canonicalize-locale-list-error-oom.js:
- 2:04 PM Changeset in webkit [259827] by
-
- 2 edits in trunk/Source/WebCore
[Cocoa] The function WebCore::systemHasBattery() should cache the result.
https://bugs.webkit.org/show_bug.cgi?id=210296
<rdar://problem/61331536>
Reviewed by Darin Adler.
The function WebCore::systemHasBattery() should cache the result, since the return value of this function
will be the same on a specific device.
No new tests, since there is no change in behavior.
- platform/cocoa/SystemBattery.mm:
(WebCore::systemHasBattery):
- 1:51 PM Changeset in webkit [259826] by
-
- 16 edits in trunk
Set ENTITLEMENTS_REQUIRED=NO for some Xcode build targets
https://bugs.webkit.org/show_bug.cgi?id=210250
<rdar://problem/61502270>
Reviewed by Jonathan Bedard.
When building with the public version of Xcode 11.4, with XCBuild
enabled, and targeting the iOS device, some build targets issue an
error like:
error: An empty identity is not valid when signing a binary for
the product type 'Command-line Tool'. (in target 'yasm' from
project 'libwebrtc')
A comment in <rdar://problem/47092353> suggests setting
ENTITLEMENTS_REQUIRED=NO to relax the requirement. To that end, when
building with the public Xcode, establish that setting for the
affected targets.
Source/ThirdParty/libwebrtc:
- Configurations/Base.xcconfig:
Source/WebCore:
No new tests -- no changed functionality.
- Configurations/WebCoreTestShim.xcconfig:
- Configurations/WebCoreTestSupport.xcconfig:
Source/WebKit:
- Configurations/GPUService.xcconfig:
- Configurations/NetworkService.xcconfig:
- Configurations/PluginProcessShim.xcconfig:
- Configurations/PluginService.64.xcconfig:
- Configurations/SecItemShim.xcconfig:
- Configurations/WebContentService.xcconfig:
Tools:
With this change, we can also remove
IDEProvisioningProfileSupportRelaxed=YES from webkitdirs.pm.
- Scripts/webkitdirs.pm:
(XcodeOptions):
- TestWebKitAPI/Configurations/TestWTF.xcconfig:
- TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
- 1:51 PM Changeset in webkit [259825] by
-
- 3 edits in trunk/Source/WebCore
Remove FrameLoader::outgoingOrigin
https://bugs.webkit.org/show_bug.cgi?id=210286
Patch by Rob Buis <rbuis@igalia.com> on 2020-04-09
Reviewed by Darin Adler.
Remove FrameLoader::outgoingOrigin since it is no longer used.
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::outgoingOrigin const): Deleted.
- loader/FrameLoader.h:
- 1:49 PM Changeset in webkit [259824] by
-
- 35 edits in trunk/Source
Unreviewed, reverting r259816.
This commit broke the webkit build for macOS and iOS
Reverted changeset:
"Introduce a RealtimeMediaSource observer dedicated to
receiving audio samples"
https://bugs.webkit.org/show_bug.cgi?id=210180
https://trac.webkit.org/changeset/259816
- 1:43 PM Changeset in webkit [259823] by
-
- 1 copy in tags/Safari-610.1.9
Tag Safari-610.1.9.
- 1:40 PM Changeset in webkit [259822] by
-
- 4 edits in trunk
ProxyObject::defineOwnProperty() should conditionally throw on falsy trap result
https://bugs.webkit.org/show_bug.cgi?id=210267
Reviewed by Ross Kirsling.
JSTests:
- test262/expectations.yaml: Mark 2 test cases as passing.
Source/JavaScriptCore:
This change adds conditional TypeError for falsy trap result [1], like there is in
ProxyObject::performPut(), aligning JSC with V8 and SpiderMonkey. Also replaces
throwVMTypeError() calls which results are unused with throwTypeError().
[1]: https://tc39.es/ecma262/#sec-definepropertyorthrow (step 4)
- runtime/ProxyObject.cpp:
(JSC::ProxyObject::performDefineOwnProperty)
- 1:38 PM Changeset in webkit [259821] by
-
- 2 edits in trunk/Source/WebCore
[ macOS debug wk2 ] REGRESSION(r259762): ASSERTION FAILED: !needsLayout() on fast/events/scroll-subframe-in-rendering-update.html
https://bugs.webkit.org/show_bug.cgi?id=210278
<rdar://problem/61517389>
Reviewed by Darin Adler.
Only EventRegion paint the contents of the widget if the widget is a frame view that
does not need layout because layout must come before painting. Otherwise, an assertion
failure will occur.
- rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paint):
- 1:36 PM Changeset in webkit [259820] by
-
- 7 edits in trunk/Source
eventSender.monitorWheelEvents() should clear latching state
https://bugs.webkit.org/show_bug.cgi?id=210288
Reviewed by Tim Horton.
Use monitorWheelEvents() as a trigger to clear scroll latching state, both main-thread (via Page)
and scrolling thread (via ScrollingTree).
Page::ensureWheelEventTestMonitor() had side-effects, so hide it, and have clients explicitly call Page::startMonitoringWheelEvents().
Source/WebCore:
- page/Page.cpp:
(WebCore::Page::startMonitoringWheelEvents):
(WebCore::Page::ensureWheelEventTestMonitor):
- page/Page.h:
- testing/js/WebCoreTestSupport.cpp:
(WebCoreTestSupport::monitorWheelEvents):
(WebCoreTestSupport::setWheelEventMonitorTestCallbackAndStartMonitoring):
Source/WebKit:
- WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageStartMonitoringScrollOperations):
(WKBundlePageRegisterScrollOperationCompletionCallback):
- 1:16 PM Changeset in webkit [259819] by
-
- 4 edits in trunk
Add an API test for <https://trac.webkit.org/r259766>
https://bugs.webkit.org/show_bug.cgi?id=210294
Reviewed by Tim Horton.
Source/WebCore:
Avoid trying to place the missing value into paragraphSets in TextManipulationController by bailing if either
the start or end positions are null (while the missing value requires both the start and end to be null, it is
sufficient to bail if either are null becauseobserveParagraphs
will be a no-op anyways).
See Tools/ChangeLog for more details.
Test: TextManipulation.CompleteTextManipulationAvoidCrashingWhenContentIsRemoved
- editing/TextManipulationController.cpp:
(WebCore::TextManipulationController::scheduleObservartionUpdate):
Tools:
Exercise the pathological case fixed in r259766 by inserting and then immediately removing a paragraph element
after starting text manipulation. This test also revealed an existing issue in TextManipulationController, where
we will end up hitting a debug assertion when trying to insert { null position, null position } into a HashMap
underneathTextManipulationController::scheduleObservartionUpdate
.
- TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TestWebKitAPI::TEST):
- 1:11 PM Changeset in webkit [259818] by
-
- 9 edits in trunk
Reset view navigation gesture state between tests
https://bugs.webkit.org/show_bug.cgi?id=210283
Reviewed by Tim Horton.
State in ViewGestureController could leak between tests if a test did not wait for the gesture to complete.
Specifically m_activeGestureType could be left as non-None.
Source/WebKit:
Fix by plumbing a 'reset' through from TestController::resetStateToConsistentValues().
The implementations leverage code from removeSwipeSnapshot(), but avoid the fact that removeSwipeSnapshot()
early returns in various cases by just always calling reset code, which is factored into a new resetState function.
- UIProcess/API/Cocoa/WKWebViewPrivateForTesting.h:
- UIProcess/API/Cocoa/WKWebViewTesting.mm:
(-[WKWebView _resetNavigationGestureStateForTesting]):
- UIProcess/ViewGestureController.cpp:
(WebKit::ViewGestureController::willBeginGesture):
(WebKit::ViewGestureController::didEndGesture):
(WebKit::ViewGestureController::PendingSwipeTracker::handleEvent):
(WebKit::ViewGestureController::PendingSwipeTracker::eventWasNotHandledByWebCore):
- UIProcess/ViewGestureController.h:
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::removeSwipeSnapshot):
(WebKit::ViewGestureController::resetState):
(WebKit::ViewGestureController::reset):
- UIProcess/mac/ViewGestureControllerMac.mm:
(WebKit::ViewGestureController::removeSwipeSnapshot):
(WebKit::ViewGestureController::resetState):
(WebKit::ViewGestureController::reset):
Tools:
Fix by plumbing a 'reset' through from TestController::resetStateToConsistentValues().
The implementations leverage code from removeSwipeSnapshot(), but avoid the fact that removeSwipeSnapshot()
early returns in various cases by just always calling reset code, which is factored into a new resetState function.
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
- 1:00 PM Changeset in webkit [259817] by
-
- 23 edits in trunk/Source
Unreviewed, reverting r259804.
Breaks the watchOS build.
Reverted changeset:
"IPC serialization of enums should serialize
std::underlying_type instead of uint64_t"
https://bugs.webkit.org/show_bug.cgi?id=210228
https://trac.webkit.org/changeset/259804
- 12:44 PM Changeset in webkit [259816] by
-
- 35 edits in trunk/Source
Introduce a RealtimeMediaSource observer dedicated to receiving audio samples
https://bugs.webkit.org/show_bug.cgi?id=210180
Reviewed by Eric Carlson.
Source/WebCore:
RealtimeMediaSource::Observer was called on various threads which was making iterating through them difficult.
Observers were copied to a vector for iterating each time and locking was happening for each indivudual observer.
Instead of doing that, RealtimeMediaSource::Observer no longer gives access to audio samples, all its methods are called from the main thread.
AudioSampleObserver is introduced with a single method to receive audio samples.
RealtimeMediaSource keeps a set of AudioSampleObserver separated from its existing Observer hashset.
These observers can only be added/removed from the main thread while audio sample delivery usually happens from a background thread.
We no longer need to copy the audio sample observers in a vector and lock only once when iterating the audio sample observers.
This change requires to update MediaStreamTrackPrivate and RealtimeMediaSource observers.
This includes WebAudio, Audio Renderer and Media Recorder.
Each corresponding class is now registering itself as a MediaStreamTrackPrivate::Observer and when needed as a RealtimeMediaSource::Observer.
This allows removing the additional copy-in-vector/lock that was happening when iterating over MediaStreamTrackPrivate::Observers for audio samples.
This change also allows for a consumer to always observe the MediaStreamTrackPrivate but receive audio samples only when needed.
We change the AudioTrackPrivateMediaStream implementation so that, if the renderer is muted, not playing, the track is muted or not enabled,
it no longer receives audio samples.
This is especially useful in the typical case where a video element displays the locally captured stream (including a local audio track) but is muted
to prevent feedback loop.
For that reason, the player is now setting the muted state of the renderer instead of setting volume to 0.
Covered by existing test sets.
- Modules/mediarecorder/MediaRecorder.cpp:
(WebCore::MediaRecorder::createMediaRecorderPrivate):
- Modules/mediarecorder/MediaRecorder.h:
- Modules/mediarecorder/MediaRecorderProvider.cpp:
(WebCore::MediaRecorderProvider::createMediaRecorderPrivate):
- Modules/mediarecorder/MediaRecorderProvider.h:
- loader/EmptyClients.cpp:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::setVolume):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::setMuted):
- platform/mediarecorder/MediaRecorderPrivate.cpp:
(WebCore::MediaRecorderPrivate::selectTracks):
- platform/mediarecorder/MediaRecorderPrivate.h:
(WebCore::MediaRecorderPrivate::setAudioSource):
(WebCore::MediaRecorderPrivate::~MediaRecorderPrivate):
- platform/mediarecorder/MediaRecorderPrivateAVFImpl.cpp:
(WebCore::MediaRecorderPrivateAVFImpl::create):
(WebCore::MediaRecorderPrivateAVFImpl::~MediaRecorderPrivateAVFImpl):
(WebCore::MediaRecorderPrivateAVFImpl::audioSamplesAvailable):
(WebCore::MediaRecorderPrivateAVFImpl::stopRecording):
(WebCore::MediaRecorderPrivateAVFImpl::fetchData):
- platform/mediarecorder/MediaRecorderPrivateAVFImpl.h:
- platform/mediarecorder/MediaRecorderPrivateMock.cpp:
(WebCore::MediaRecorderPrivateMock::MediaRecorderPrivateMock):
(WebCore::MediaRecorderPrivateMock::~MediaRecorderPrivateMock):
(WebCore::MediaRecorderPrivateMock::stopRecording):
(WebCore::MediaRecorderPrivateMock::sampleBufferUpdated):
(WebCore::MediaRecorderPrivateMock::audioSamplesAvailable):
(WebCore::MediaRecorderPrivateMock::generateMockCounterString):
(WebCore::MediaRecorderPrivateMock::fetchData):
- platform/mediarecorder/MediaRecorderPrivateMock.h:
- platform/mediastream/AudioTrackPrivateMediaStream.cpp:
(WebCore::AudioTrackPrivateMediaStream::AudioTrackPrivateMediaStream):
(WebCore::AudioTrackPrivateMediaStream::clear):
(WebCore::AudioTrackPrivateMediaStream::play):
(WebCore::AudioTrackPrivateMediaStream::pause):
(WebCore::AudioTrackPrivateMediaStream::setMuted):
(WebCore::AudioTrackPrivateMediaStream::audioSamplesAvailable):
(WebCore::AudioTrackPrivateMediaStream::trackMutedChanged):
(WebCore::AudioTrackPrivateMediaStream::trackEnabledChanged):
(WebCore::AudioTrackPrivateMediaStream::trackEnded):
(WebCore::AudioTrackPrivateMediaStream::updateRenderer):
(WebCore::AudioTrackPrivateMediaStream::startRenderer):
(WebCore::AudioTrackPrivateMediaStream::stopRenderer):
- platform/mediastream/AudioTrackPrivateMediaStream.h:
- platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:
(WebCore::webkitMediaStreamSrcFinalize):
(WebCore::webkitMediaStreamSrcChangeState):
(WebCore::webkitMediaStreamSrcSetupSrc):
- platform/mediastream/MediaStreamPrivate.cpp:
(WebCore::MediaStreamPrivate::forEachTrack):
- platform/mediastream/MediaStreamPrivate.h:
- platform/mediastream/MediaStreamTrackPrivate.cpp:
(WebCore::MediaStreamTrackPrivate::forEachObserver const):
(WebCore::MediaStreamTrackPrivate::addObserver):
(WebCore::MediaStreamTrackPrivate::removeObserver):
(WebCore::MediaStreamTrackPrivate::hasStartedProducingAudioData):
- platform/mediastream/MediaStreamTrackPrivate.h:
- platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::addAudioSampleObserver):
(WebCore::RealtimeMediaSource::removeAudioSampleObserver):
(WebCore::RealtimeMediaSource::addObserver):
(WebCore::RealtimeMediaSource::removeObserver):
(WebCore::RealtimeMediaSource::forEachObserver const):
(WebCore::RealtimeMediaSource::audioSamplesAvailable):
- platform/mediastream/RealtimeMediaSource.h:
- platform/mediastream/RealtimeOutgoingAudioSource.cpp:
(WebCore::RealtimeOutgoingAudioSource::~RealtimeOutgoingAudioSource):
(WebCore::RealtimeOutgoingAudioSource::observeSource):
(WebCore::RealtimeOutgoingAudioSource::unobserveSource):
- platform/mediastream/RealtimeOutgoingAudioSource.h:
- platform/mediastream/WebAudioSourceProvider.h:
- platform/mediastream/mac/WebAudioSourceProviderAVFObjC.h:
- platform/mediastream/mac/WebAudioSourceProviderAVFObjC.mm:
(WebCore::WebAudioSourceProviderAVFObjC::WebAudioSourceProviderAVFObjC):
(WebCore::WebAudioSourceProviderAVFObjC::~WebAudioSourceProviderAVFObjC):
(WebCore::WebAudioSourceProviderAVFObjC::trackEnabledChanged):
(WebCore::WebAudioSourceProviderAVFObjC::audioSamplesAvailable):
- testing/Internals.cpp:
(WebCore::Internals::~Internals):
(WebCore::createRecorderMockSource):
(WebCore::Internals::observeMediaStreamTrack):
(WebCore::Internals::videoSampleAvailable):
- testing/Internals.h:
Source/WebKit:
Update SourceProxy to be an AudioSampleObserver.
Update MediaRecorder to only listen for audio samples if GPU remote writer is successfully created.
It also stops listening to audio samples as soon as stopping the recording.
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(WebKit::UserMediaCaptureManagerProxy::SourceProxy::SourceProxy):
(WebKit::UserMediaCaptureManagerProxy::SourceProxy::~SourceProxy):
- WebProcess/GPU/webrtc/MediaRecorderPrivate.cpp:
(WebKit::MediaRecorderPrivate::MediaRecorderPrivate):
(WebKit::MediaRecorderPrivate::~MediaRecorderPrivate):
(WebKit::MediaRecorderPrivate::audioSamplesAvailable):
(WebKit::MediaRecorderPrivate::stopRecording):
- WebProcess/GPU/webrtc/MediaRecorderPrivate.h:
- WebProcess/GPU/webrtc/MediaRecorderProvider.cpp:
(WebKit::MediaRecorderProvider::createMediaRecorderPrivate):
- WebProcess/GPU/webrtc/MediaRecorderProvider.h:
- 12:42 PM Changeset in webkit [259815] by
-
- 2 edits in trunk/Tools
[ews] Add unit tests to ensure that step names are valid identifier
https://bugs.webkit.org/show_bug.cgi?id=210289
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps_unittest.py:
(TestStepNameShouldBeValidIdentifier):
(TestStepNameShouldBeValidIdentifier.test_step_names_are_valid): unit-test to validate step names.
- 12:33 PM Changeset in webkit [259814] by
-
- 6 edits in trunk/Source
WTF::Persistence::Coder and WTF::Persistence::Decoder should use WARN_UNUSED_RETURN
<https://webkit.org/b/210238>
<rdar://problem/61491575>
Reviewed by Darin Adler.
Source/WebKit:
- NetworkProcess/cache/NetworkCacheEntry.cpp:
(WebKit::NetworkCache::Entry::decodeStorageRecord):
- Add missing return value check for decode.decode().
Source/WTF:
- wtf/persistence/PersistentCoders.cpp:
(WTF::Persistence::decodeStringText):
- Add WARN_UNUSED_RETURN.
- wtf/persistence/PersistentCoders.h:
(WTF::Persistence::Coder<Optional<T>>::decode):
(WTF::Persistence::Coder<Seconds>::decode):
(WTF::Persistence::Coder<WallTime>::decode):
- Add WARN_UNUSED_RETURN.
- Add missing return value check for decode.decodeFixedLengthData().
- wtf/persistence/PersistentDecoder.h:
(WTF::Persistence::Decoder::decode):
(WTF::Persistence::Decoder::decodeEnum):
(WTF::Persistence::Decoder::bufferIsLargeEnoughToContain const):
- Add WARN_UNUSED_RETURN.
- 12:23 PM Changeset in webkit [259813] by
-
- 3 edits in trunk/Source/WebCore
Removed unused fields and functions from StylePropertyShorthand
https://bugs.webkit.org/show_bug.cgi?id=210279
Reviewed by Darin Adler.
- css/StylePropertyShorthand.cpp:
(WebCore::borderAbridgedShorthand): Deleted.
- css/StylePropertyShorthand.h:
(WebCore::StylePropertyShorthand::StylePropertyShorthand):
(WebCore::StylePropertyShorthand::properties const):
(WebCore::StylePropertyShorthand::propertiesForInitialization const): Deleted.
- 12:20 PM Changeset in webkit [259812] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Add routines to message filter in the WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=210293
Reviewed by Geoffrey Garen.
Add required routines to the message filter in the WebContent process. This set of routines was compiled
from local testing, and is therefore probably not the complete set.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 12:00 PM Changeset in webkit [259811] by
-
- 7 edits2 adds in trunk/Tools
Buildbot: Force crash log submission after each test run
https://bugs.webkit.org/show_bug.cgi?id=210202
<rdar://problem/60508929>
Reviewed by Aakash Jain and Alexey Proskuryakov.
- BuildSlaveSupport/build.webkit.org-config/factories.py:
(TestFactory.init): Add steps triggering crash uploads and waiting for crash
collection to quiesce.
- BuildSlaveSupport/build.webkit.org-config/steps.py:
(TriggerCrashCollection): Add step to trigger crash collection.
(WaitForCrashCollection): Add step to wait for for crash collection process to quiesce.
- BuildSlaveSupport/build.webkit.org-config/steps.py:
(BuildStepsConstructorTest): Update Apple testing steps to include crash log collection.
- BuildSlaveSupport/ews-build/factories.py:
(TestFactory):
(TestFactory.init): Add willTriggerCrashLogSubmission variable.
(iOSTestsFactory):
(macOSWK1Factory):
(macOSWK2Factory):
- BuildSlaveSupport/ews-build/factories_unittest.py:
(TestLayoutTestsFactory.test_macos_wk1_release_factory):
(TestLayoutTestsFactory.test_macos_wk1_debug_factory):
(TestLayoutTestsFactory.test_macos_wk2_factory):
(TestLayoutTestsFactory.test_ios_wk2_factory):
- BuildSlaveSupport/ews-build/steps.py:
(TriggerCrashLogSubmission):
(WaitForCrashCollection):
- BuildSlaveSupport/trigger-crash-collection: Added.
- BuildSlaveSupport/wait-for-crash-collection: Added.
(pid_for_name): Given a process name, return the PID for that process.
(cpu_percentage): Return float representing the current CPU usage of the provided PID.
(main):
- 11:22 AM Changeset in webkit [259810] by
-
- 16 edits2 adds in trunk
Web Inspector: Debugger: debug hooks should also be emitted for the first sub-expression in a comma expression
https://bugs.webkit.org/show_bug.cgi?id=210253
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
- bytecompiler/NodesCodegen.cpp:
(JSC::CommaNode::emitBytecode):
- parser/Parser.cpp:
(JSC::Parser<LexerType>::parseVariableDeclarationList):
(JSC::Parser<LexerType>::parseExpression):
We should emit debug hooks and record pause locations for the first sub-expression in comma
expressions, as the comma expression is not always standalone (e.g.true && (a(), b())
).
- bytecompiler/BytecodeGenerator.h:
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitDebugHook):
Save theJSTextPosition
andDebugHookType
of the last debug hook, using them to prevent
any additional debug hooks from being emitted if they have the sameJSTextPosition
and
DebugHookType
. This prevents the debugger from pausing twice at the beginning of an
expression statement (e.g.|a(), b();
).
Source/WebInspectorUI:
- UserInterface/Workers/Formatter/JSFormatter.js:
(JSFormatter.prototype._handleTokenAtNode):
(JSFormatter.prototype._isLikelyToHaveNewline): Deleted.
If an arrow function wraps it's body with{
and}
, always add newlines to make setting
breakpoints inside the function body easier.
LayoutTests:
- inspector/debugger/breakpoints/resources/dump-general.js:
- inspector/debugger/breakpoints/resolved-dump-each-line-expected.txt:
- inspector/debugger/breakpoints/resolved-dump-all-pause-locations-expected.txt:
- inspector/debugger/stepping/stepOver.html:
- inspector/debugger/stepping/stepOver-expected.txt:
- inspector/formatting/formatting-javascript.html:
- inspector/formatting/formatting-javascript-expected.txt:
- inspector/formatting/resources/javascript-tests/arrow-functions-expected.js:
- inspector/formatting/resources/javascript-tests/comma-expressions.js: Added.
- inspector/formatting/resources/javascript-tests/comma-expressions-expected.js: Added.
- 11:17 AM Changeset in webkit [259809] by
-
- 3 edits in trunk/Tools
[ews] rename CompileJSCToT to CompileJSCWithoutPatch
https://bugs.webkit.org/show_bug.cgi?id=210265
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps.py:
(CompileWebKitWithoutPatch): Drive-by fix to rename similar name.
(AnalyzeCompileWebKitResults.start): Ditto.
(CompileWebKit.evaluateCommand): Renamed CompileJSCToT to CompileJSCWithoutPatch.
(CompileJSCWithoutPatch): Ditto.
(ReRunJavaScriptCoreTests.evaluateCommand): Ditto.
- BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
- 11:14 AM Changeset in webkit [259808] by
-
- 2 edits in trunk/LayoutTests/http/tests
Two tests need to be rebaselined
https://bugs.webkit.org/show_bug.cgi?id=210290
Unreviewed test gardening.
- http/tests/adClickAttribution/anchor-tag-attributes-validation-expected.txt:
- http/tests/security/anchor-download-block-crossorigin-expected.txt:
- 10:59 AM Changeset in webkit [259807] by
-
- 3 edits1 add in trunk
We can still cache delete in strict mode as long as the property is not "non-configurable"
https://bugs.webkit.org/show_bug.cgi?id=210148
Reviewed by Tadeu Zagallo.
JSTests:
- microbenchmarks/delete-cache-strict-mode.js: Added.
(assert):
(doDel):
(doDelByVal):
Source/JavaScriptCore:
We were incorrectly not inline caching all delete misses in strict mode.
We only must to not cache deletes on non-configurable properties in strict
mode, as that should throw a runtime error. Delete misses can still be cached
in strict mode without any issues. This is a 4x speedup on the microbenchmark.
- jit/Repatch.cpp:
(JSC::tryCacheDeleteBy):
- 10:54 AM Changeset in webkit [259806] by
-
- 3 edits in trunk/Source/WebKit
[iOS] Date and time form controls are presented at the wrong size in some modes
https://bugs.webkit.org/show_bug.cgi?id=210194
<rdar://problem/60385475>
Reviewed by Tim Horton.
Instead of relying on the default size for date/time controls, we should let the
UIDatePicker determine its own size given the configuration we're going to use.
- UIProcess/ios/forms/WKFormInputControl.mm:
(-[WKDateTimePicker initWithView:datePickerMode:]):
(-[WKDateTimePopover initWithView:datePickerMode:]):
- UIProcess/ios/forms/WKFormSelectPopover.mm:
(-[WKSelectPopover initWithView:hasGroups:]):
- 9:25 AM Changeset in webkit [259805] by
-
- 19 edits5 adds in trunk
[Async overflow scroll] Horizontal scrolls can trigger unwanted back swipes
https://bugs.webkit.org/show_bug.cgi?id=210095
<rdar://problem/61376245>
Reviewed by Tim Horton.
Source/WebCore:
With async overflow/frame scrolling, EventDispatcher::wheelEvent() can't immediately
determine whether the scrolling tree handled the scroll; we have to wait until the
event has been processed by the scrolling thread. To allow that, add a
ScrollingEventResult::SendToScrollingThread return value and a give tryToHandleWheelEvent()
a callback that's called when the scrolling thread is done with the event. EventDispatcher
uses that to send the "didReceiveEvent" with "handled" back to the UI process, which then
proceeds with history or reading list swipes.
Various fixes were necessary to correctly determine whether the event was handled.
ScrollingTreeFrameScrollingNodeMac::handleWheelEvent() didn't return an accurate ScrollingEventResult,
and ScrollController didn't return false in cases where rubber-banding was disabled (which broke navigation swipes
and reading list navigation).
Tests: scrollingcoordinator/mac/latching/main-frame-back-swipe.html
scrollingcoordinator/mac/latching/simple-page-rubberbands.html
- page/scrolling/ScrollingCoordinatorTypes.h:
- page/scrolling/ScrollingThread.h:
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::handleWheelEvent):
(WebCore::ScrollingTree::mainFrameCanRubberBandInDirection):
- page/scrolling/ScrollingTree.h:
- page/scrolling/ThreadedScrollingTree.cpp:
(WebCore::ThreadedScrollingTree::tryToHandleWheelEvent):
- page/scrolling/ThreadedScrollingTree.h:
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::handleWheelEvent):
- page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:
(WebCore::ScrollingTreeScrollingNodeDelegateMac::allowsHorizontalStretching const):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::allowsVerticalStretching const):
(WebCore::ScrollingTreeScrollingNodeDelegateMac::shouldRubberBandInDirection const):
- platform/cocoa/ScrollController.h:
- platform/cocoa/ScrollController.mm:
(WebCore::ScrollController::handleWheelEvent):
(WebCore::ScrollController::wheelDeltaBiasingTowardsVertical):
(WebCore::ScrollController::directionFromEvent):
(WebCore::ScrollController::shouldRubberBandInHorizontalDirection const):
(WebCore::ScrollController::shouldRubberBandInDirection const):
(WebCore::ScrollController::shouldRubberBandInHorizontalDirection): Deleted.
Source/WebKit:
With async overflow/frame scrolling, EventDispatcher::wheelEvent() can't immediately
determine whether the scrolling tree handled the scroll; we have to wait until the
event has been processed by the scrolling thread. To allow that, add a
ScrollingEventResult::SendToScrollingThread return value and a give tryToHandleWheelEvent()
a callback that's called when the scrolling thread is done with the event. EventDispatcher
uses that to send the "didReceiveEvent" with "handled" back to the UI process, which then
proceeds with history or reading list swipes.
Various fixes were necessary to correctly determine whether the event was handled.
ScrollingTreeFrameScrollingNodeMac::handleWheelEvent() didn't return an accurate ScrollingEventResult,
and ScrollController didn't return false in cases where rubber-banding was disabled (which broke navigation swipes
and reading list navigation).
- UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
(WebKit::RemoteScrollingCoordinatorProxy::handleWheelEvent):
- UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:
(WebKit::RemoteScrollingTree::tryToHandleWheelEvent):
- UIProcess/RemoteLayerTree/RemoteScrollingTree.h:
- WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::wheelEvent):
(WebKit::EventDispatcher::sendDidReceiveEvent):
- WebProcess/WebPage/EventDispatcher.h:
LayoutTests:
Tests that rubberbanding works on a simple page, and that edge swipes work on a simple page.
Edge swipes inside overflow:scroll are still broken by latching and will be fixed later.
- resources/ui-helper.js:
(window.UIHelper.async mouseWheelScrollAt):
- scrollingcoordinator/mac/latching/main-frame-back-swipe-expected.txt: Added.
- scrollingcoordinator/mac/latching/main-frame-back-swipe.html: Added.
- scrollingcoordinator/mac/latching/simple-page-rubberbands-expected.txt: Added.
- scrollingcoordinator/mac/latching/simple-page-rubberbands.html: Added.
- 9:18 AM Changeset in webkit [259804] by
-
- 23 edits in trunk/Source
IPC serialization of enums should serialize std::underlying_type instead of uint64_t
https://bugs.webkit.org/show_bug.cgi?id=210228
Reviewed by Chris Dumez and Darin Adler.
Source/WebCore:
No change in behavior, other than less memory and time spent in IPC code.
- html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::drawTextInternal):
- platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContextStateChange::dump const):
- platform/graphics/GraphicsContext.h:
- platform/graphics/ca/PlatformCALayer.cpp:
(WebCore::PlatformCALayer::drawRepaintIndicator):
- platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setPlatformTextDrawingMode):
- platform/graphics/cocoa/FontCascadeCocoa.mm:
(WebCore::shouldUseLetterpressEffect):
(WebCore::FontCascade::drawGlyphs):
- platform/mock/MockRealtimeVideoSource.cpp:
(WebCore::MockRealtimeVideoSource::drawText):
- rendering/TextPaintStyle.cpp:
(WebCore::updateGraphicsContext):
- rendering/TextPainter.cpp:
(WebCore::TextPainter::paintTextAndEmphasisMarksIfNeeded):
- rendering/svg/RenderSVGResourceGradient.cpp:
(WebCore::RenderSVGResourceGradient::applyResource):
- rendering/svg/RenderSVGResourcePattern.cpp:
(WebCore::RenderSVGResourcePattern::applyResource):
- rendering/svg/RenderSVGResourceSolidColor.cpp:
(WebCore::RenderSVGResourceSolidColor::applyResource):
Source/WebKit:
- Platform/IPC/Decoder.h:
(IPC::Decoder::decode):
(IPC::Decoder::operator>>):
(IPC::Decoder::decodeEnum):
- Platform/IPC/Encoder.h:
- Shared/cf/ArgumentCodersCF.cpp:
(IPC::encode):
(IPC::decode):
- 9:13 AM Changeset in webkit [259803] by
-
- 3 edits in trunk/Source/JavaScriptCore
[Wasm] Build fix for non-unified builds
https://bugs.webkit.org/show_bug.cgi?id=210277
Reviewed by Yusuke Suzuki.
- wasm/WasmPlan.cpp: Added missing includes.
- wasm/WasmPlan.h: Forward declare CodeBlock.
- 8:24 AM Changeset in webkit [259802] by
-
- 3 edits2 adds in trunk
Source/WebKit:
[MacOS] REGRESSION (r253275): Stopping a cloned audio capture track should not stop the original audio track
https://bugs.webkit.org/show_bug.cgi?id=210259
<rdar://problem/61466486>
Reviewed by Eric Carlson.
We changed video track cloning so that each cloned track would get its own source.
The source is getting video sample from the real capture source.
The real capture source will get stopped if all its client sources are stopped.
For audio, we are still using the same audio source for each track.
We should thus not close the source until all its tracks are stopped.
To do so, we reuse RealtimeMediaSource::requestToEnd instead of directly sending
the order to stop observing the remote audio source.
Test: fast/mediastream/mediastreamtrack-audio-clone.html
- WebProcess/cocoa/UserMediaCaptureManager.cpp:
(WebKit::UserMediaCaptureManager::Source::requestToEnd):
(WebKit::UserMediaCaptureManager::Source::stopBeingObserved): Deleted.
LayoutTests:
[MacOS] Stopping a cloned audio capture track should not stop the original audio track
https://bugs.webkit.org/show_bug.cgi?id=210259
<rdar://problem/61466486>
Reviewed by Eric Carlson.
- fast/mediastream/mediastreamtrack-audio-clone-expected.txt: Added.
- fast/mediastream/mediastreamtrack-audio-clone.html: Added.
- 8:19 AM Changeset in webkit [259801] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 ] crypto/subtle/rsa-indexeddb.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=208010
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 8:13 AM Changeset in webkit [259800] by
-
- 5 edits2 adds in trunk
getOwnPropertyDescriptor() is incorrect with Proxy of exotic object
https://bugs.webkit.org/show_bug.cgi?id=200560
Reviewed by Yusuke Suzuki.
JSTests:
- test262/expectations.yaml: Mark 14 test cases as passing.
Source/JavaScriptCore:
PropertyAttribute::CustomValue path in JSObject::getOwnPropertyDescriptor() needs to perform
getDirect() on correct target. A correct target may be different since getOwnPropertySlot()
may return not *own* property.
This change removes a hack that was covering only JSProxy case and invokes getDirect() on
slotBase(), ensuring ProxyObject instances with exotic targets return correct descriptors
and aligning JSC with V8 and SpiderMonkey.
getDirect() can be safely called on slotBase(): if getOwnPropertySlot() result is returned
from JS code of ProxyObject's trap, it will never be a PropertyAttribute::CustomValue.
This patch also moves setCustomDescriptor() down below to avoid mutating a descriptor when
returningfalse
.
- runtime/JSObject.cpp:
(JSC::JSObject::getOwnPropertyDescriptor):
LayoutTests:
- js/getOwnPropertyDescriptor-host-object-proxy-expected.txt: Added.
- js/getOwnPropertyDescriptor-host-object-proxy.html: Added.
- 7:48 AM Changeset in webkit [259799] by
-
- 5 edits in trunk
[GTK] Clean-up use of deprecated GtkAction
https://bugs.webkit.org/show_bug.cgi?id=210273
Reviewed by Carlos Garcia Campos.
Source/WebKit:
GtkAction is deprecated, however we use it because it's exposed
in the public API. Guard deprecated API usage to remove warnings and
update docs to not suggest using the deprecated API.
- Shared/API/glib/WebKitContextMenuItem.cpp:
- Shared/glib/WebContextMenuItemGlib.cpp:
(WebKit::WebContextMenuItemGlib::buildActionName const):
(WebKit::WebContextMenuItemGlib::createActionIfNeeded):
Tools:
GtkAction is deprecated so remove usage of it in the
context menu API tests and guard its API usage when
we still need to use it to test the deprecated WebKitGTK+ API
exposing GtkAction.
- TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
(testContextMenuPopulateMenu):
- 7:20 AM Changeset in webkit [259798] by
-
- 2 edits in trunk/Source/WebCore
Use more WeakPtr in RenderTreeBuilder::FirstLetter
https://bugs.webkit.org/show_bug.cgi?id=210251
<rdar://problem/61180381>
Reviewed by Zalan Bujtas.
For safety.
- rendering/updating/RenderTreeBuilderFirstLetter.cpp:
(WebCore::RenderTreeBuilder::FirstLetter::createRenderers):
- 7:16 AM Changeset in webkit [259797] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=210275
Unreviewed gardening.
Gardening of flaky failures.
- platform/gtk/TestExpectations:
- 6:56 AM Changeset in webkit [259796] by
-
- 4 edits in trunk/LayoutTests
Fix layout tests after r259762
(https://bugs.webkit.org/show_bug.cgi?id=209888)
Fix up path to external JavaScript scripts.
- editing/editable-region/hit-test-basic.html:
- editing/editable-region/hit-test-fixed.html:
- editing/editable-region/hit-test-overlap.html:
- 6:22 AM Changeset in webkit [259795] by
-
- 2 edits in trunk/LayoutTests
[WPE] Gardening of ImageOnly failures
https://bugs.webkit.org/show_bug.cgi?id=210260
Unreviewed gardening.
Update several ImageOnly failures.
- platform/wpe/TestExpectations:
- 6:20 AM Changeset in webkit [259794] by
-
- 2 edits1 delete in trunk/LayoutTests
Unreviewed GTK gardening. Remove platform specific results for http/tests/appcache/history-test.html
This was a progression, not a regression.
- platform/gtk/TestExpectations:
- platform/gtk/http/tests/appcache/history-test-expected.txt: Removed.
- 6:19 AM Changeset in webkit [259793] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, flaky failures in EWS GTK-WK2
https://bugs.webkit.org/show_bug.cgi?id=210268
Unreviewed gardening.
Mark tests only failing in EWS GTK-WK2 as flaky.
- platform/gtk/TestExpectations:
- 6:16 AM Changeset in webkit [259792] by
-
- 2 edits in trunk/Source/JavaScriptCore
Fix CLOOP build
https://bugs.webkit.org/show_bug.cgi?id=207119
Patch by Angelos Oikonomopoulos <Angelos Oikonomopoulos> on 2020-04-09
Reviewed by Aakash Jain.
- CMakeLists.txt:
- 5:08 AM Changeset in webkit [259791] by
-
- 2 edits in trunk/WebDriverTests
[WebDriver] Gardening, update expectations of several WebDriver tests.
https://bugs.webkit.org/show_bug.cgi?id=210229
Reviewed by Carlos Garcia Campos.
Clean up tests expected to fail but passed.
- TestExpectations.json:
- 4:59 AM Changeset in webkit [259790] by
-
- 3 edits6 adds in trunk/LayoutTests
[WPE] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=210257
Unreviewed gardening.
- platform/wpe/TestExpectations:
- platform/wpe/accessibility/roles-exposed-expected.txt: Updated baseline after r259671.
- platform/wpe/fast/ruby/bopomofo-mixed-expected.txt: New baseline after r258990.
- platform/wpe/imported/w3c/web-platform-tests/css/cssom-view/cssom-getBoundingClientRect-003-expected.txt: New baseline after r259059.
- platform/wpe/imported/w3c/web-platform-tests/css/selectors/focus-visible-009-expected.txt: New baseline after r259194.
- platform/wpe/accessibility/menu-list-sends-change-notification-expected.txt: New baseline after r259438.
- 4:01 AM Changeset in webkit [259789] by
-
- 3 edits in trunk/Source/WebKit
UserData::decode should add bounds checks
<https://webkit.org/b/210247>
<rdar://problem/61467748>
Reviewed by Alex Christensen.
- Shared/UserData.cpp:
(WebKit::UserData::decode):
- Add bounds checks using WTF::isInBounds<size_t>.
- Shared/UserData.h:
(WebKit::UserData::decode):
- Add WARN_UNUSED_RETURN.
- 3:52 AM Changeset in webkit [259788] by
-
- 4 edits in trunk/Source
Follow-up: WTF::Persistence::VectorCoder and IPC::VectorArgumentCoder should do bounds checking without crashing
<https://webkit.org/b/210227>
<rdar://problem/60832243>
Reviewed by Alex Christensen.
Source/WebKit:
- Platform/IPC/ArgumentCoders.h:
- Add missing call to decoder.markInvalid() if decoding of
decodedSize
fails. - Replace safeCast<size_t> with isInBounds<size_t> so that we
don't crash if
decodedSize
is too big. Instead we fail decoding by marking the decoder invalid and returning early. - Revert checked arithemtic for multiplication since bufferIsLargeEnoughToContain<T(size) already did this check for us.
Source/WTF:
- wtf/persistence/PersistentCoders.h:
(WTF::Persistence::VectorCoder::decode):
- Replace safeCast<size_t> with isInBounds<size_t> so that we
don't crash if
decodedSize
is too big. Instead we fail decoding by returning early. - Revert checked arithemtic for multiplication since bufferIsLargeEnoughToContain<T(size) already did this check for us.
- 3:05 AM Changeset in webkit [259787] by
-
- 3 edits in trunk/Tools
[ews] rename CompileWebKitToT to CompileWebKitWithoutPatch
https://bugs.webkit.org/show_bug.cgi?id=210190
Reviewed by Alex Christensen.
- BuildSlaveSupport/ews-build/steps.py: Renamed CompileWebKitToT to CompileWebKitWithoutPatch.
(CompileWebKit.evaluateCommand):
(CompileWebKitWithoutPatch):
(AnalyzeCompileWebKitResults.start):
(ReRunWebKitTests.evaluateCommand):
(ReRunAPITests.evaluateCommand):
(CompileWebKitToT): Deleted.
(CompileWebKitToT.doStepIf): Deleted.
(CompileWebKitToT.hideStepIf): Deleted.
(CompileWebKitToT.evaluateCommand): Deleted.
- BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests accordingly.
- 2:27 AM Changeset in webkit [259786] by
-
- 21 edits in trunk/Source
Implement a more efficient tagCFunction() tool.
https://bugs.webkit.org/show_bug.cgi?id=210254
Reviewed by Keith Miller.
Source/JavaScriptCore:
Putting tagCFunction() to use.
- b3/B3LowerMacros.cpp:
- b3/B3LowerMacrosAfterOptimizations.cpp:
- b3/B3MathExtras.cpp:
- b3/B3ReduceLoopStrength.cpp:
(JSC::B3::ReduceLoopStrength::reduceByteCopyLoopsToMemcpy):
- b3/B3ReduceStrength.cpp:
- b3/testb3_5.cpp:
(testCallSimple):
(testCallRare):
(testCallRareLive):
(testCallSimplePure):
(testCallFunctionWithHellaArguments):
(testCallFunctionWithHellaArguments2):
(testCallFunctionWithHellaArguments3):
(testCallSimpleDouble):
(testCallSimpleFloat):
(testCallFunctionWithHellaDoubleArguments):
(testCallFunctionWithHellaFloatArguments):
(testLinearScanWithCalleeOnStack):
- b3/testb3_6.cpp:
(testInterpreter):
- b3/testb3_7.cpp:
(testLICMPure):
(testLICMPureSideExits):
(testLICMPureWritesPinned):
(testLICMPureWrites):
(testLICMReadsLocalState):
(testLICMReadsPinned):
(testLICMReads):
(testLICMPureNotBackwardsDominant):
(testLICMPureFoiledByChild):
(testLICMPureNotBackwardsDominantFoiledByChild):
(testLICMExitsSideways):
(testLICMWritesLocalState):
(testLICMWrites):
(testLICMFence):
(testLICMWritesPinned):
(testLICMControlDependent):
(testLICMControlDependentNotBackwardsDominant):
(testLICMControlDependentSideExits):
(testLICMReadsPinnedWritesPinned):
(testLICMReadsWritesDifferentHeaps):
(testLICMReadsWritesOverlappingHeaps):
(testLICMDefaultCall):
(testShuffleDoesntTrashCalleeSaves):
- dfg/DFGOSRExit.cpp:
(JSC::DFG::OSRExit::emitRestoreArguments):
- dfg/DFGOSRExitCompilerCommon.cpp:
(JSC::DFG::handleExitCounts):
(JSC::DFG::osrWriteBarrier):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCallOrConstructVarargsSpread):
(JSC::FTL::DFG::LowerDFGToB3::compileCallOrConstructVarargs):
(JSC::FTL::DFG::LowerDFGToB3::compileCallEval):
- ftl/FTLOSRExitCompiler.cpp:
(JSC::FTL::compileStub):
- jit/AssemblyHelpers.cpp:
(JSC::AssemblyHelpers::callExceptionFuzz):
- jit/CCallHelpers.cpp:
(JSC::CCallHelpers::ensureShadowChickenPacket):
- jit/JITOperations.cpp:
- jit/ThunkGenerators.cpp:
(JSC::throwExceptionFromCallSlowPathGenerator):
(JSC::slowPathFor):
(JSC::nativeForGenerator):
(JSC::boundFunctionCallGenerator):
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::addTableGet):
(JSC::Wasm::B3IRGenerator::addTableSet):
(JSC::Wasm::B3IRGenerator::addRefFunc):
(JSC::Wasm::B3IRGenerator::addTableSize):
(JSC::Wasm::B3IRGenerator::addTableGrow):
(JSC::Wasm::B3IRGenerator::addTableFill):
(JSC::Wasm::B3IRGenerator::addGrowMemory):
(JSC::Wasm::B3IRGenerator::setGlobal):
(JSC::Wasm::B3IRGenerator::emitWriteBarrierForJSWrapper):
(JSC::Wasm::B3IRGenerator::addOp<OpType::I32Popcnt>):
(JSC::Wasm::B3IRGenerator::addOp<OpType::I64Popcnt>):
- wasm/WasmThunks.cpp:
(JSC::Wasm::triggerOMGEntryTierUpThunkGenerator):
Source/WTF:
The current tagCFunctionPtr() tool does some extra work that is not needed if
we are tagging a known function and not a potentially arbitrary pointer. For
example,
- it doesn't need to do a null check.
- it doesn't need to authenticate the function address.
- The RELEASE_ASSERT used to enforce that authentication can also go away.
We should only use tagCFunction() (instead of tagCFunctionPtr()) if we know for
certain that we're operating on a C/C++ function, and not some arbitrary pointer.
- wtf/PtrTag.h:
(WTF::tagCFunction):
- 12:57 AM Changeset in webkit [259785] by
-
- 5 edits in trunk/Source/WebCore
Remove unnecessary explicit parsing for mo@maxsize value "infinity"
https://bugs.webkit.org/show_bug.cgi?id=202720
Patch by Delan Azabani <dazabani@igalia.com> on 2020-04-09
Reviewed by Frédéric Wang.
In MathML 2, the default mo@maxsize was infinity [1], unless some other
default was given by mstyle@maxsize [2]. The sole purpose of "infinity"
was to give authors a way to set mo@maxsize to infinity when some other
mstyle@maxsize was set.
MathML Core removes mstyle@maxsize [3][4], such that "infinity" has the
same semantics as any other missing or invalid mo@maxsize, so the spec
has been simplified to make infinity an anonymous value [5][6].
No functional change, because WebKit has never supported mstyle@maxsize
anyway. To verify that there's no functional change:
- Search for references to LengthType::Infinity, and observe that the
mo@maxsize parser in MathMLOperatorElement::maxSize is the only
place where a Length of ::type infinity is created
- Search for references to that method, and observe that the only
caller (RenderMathMLOperator::maxSize) passes intMaxForLayoutUnit
(infinity) to toUserUnits as the referenceValue
- Go to the definition of toUserUnits, and observe that the refer-
enceValue is used as the ParsingFailed default
- Step 1 shows that no other attributes would be affected by removing
LengthType::Infinity, and steps 2 and 3 show that mo@maxsize treats
invalid values as infinity, therefore it's safe to remove both the
"infinity" parsing code and the underlying LengthType variant
[1] https://www.w3.org/TR/MathML2/chapter3.html#id.3.2.5.2
[2] https://www.w3.org/TR/MathML2/chapter3.html#presm.mstyle
[3] https://mathml-refresh.github.io/mathml-core/#style-change-mstyle
[4] https://github.com/mathml-refresh/mathml/issues/1
[5] https://mathml-refresh.github.io/mathml-core/#dictionary-based-attributes
[6] https://github.com/mathml-refresh/mathml/issues/107
No new tests, because no functional change.
- mathml/MathMLElement.h: Remove LengthType::Infinity.
- mathml/MathMLOperatorElement.cpp:
(WebCore::MathMLOperatorElement::maxSize): Remove explicit branch on "infinity". Replace what remains with an equivalent cachedMathMLLength call.
- rendering/mathml/RenderMathMLBlock.cpp:
(WebCore::toUserUnits): Remove explicit branch on LengthType::Infinity.
- rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::maxSize): Update comment to refer to the default value in the same way as the spec.
- 12:34 AM Changeset in webkit [259784] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=210248
Unreviewed gardening.
Add tests failing after r259705.
- platform/gtk/TestExpectations:
Apr 8, 2020:
- 11:14 PM Changeset in webkit [259783] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=210234
Unreviewed gardening.
Clean up tests expected to fail but passed.
- platform/gtk/TestExpectations:
- 11:00 PM Changeset in webkit [259782] by
-
- 7 edits in trunk/LayoutTests
Unreviewed test gardening, remove expectations for tests that are now consistently passing.
- platform/ios-simulator-wk2/TestExpectations:
- platform/ios-wk2/TestExpectations:
- platform/ios/TestExpectations:
- platform/ipad/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 10:10 PM Changeset in webkit [259781] by
-
- 25 edits in trunk
Web Inspector: Debugger: treat comma sub-expressions as separate statements
https://bugs.webkit.org/show_bug.cgi?id=209998
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
Minifiers sometimes use
,
instead of;
as a way of compressing multiple statements into
a single statement (e.g. inside anif
conditional). This makes stepping through minified
code much less useful, as our current stepping logic is based on expressions (not including
step in or step out). In most cases, we do actually want to treat each sub-expression in a
comma expression as a statement so as to emulate the behaviour as if there were;
instead.
- bytecompiler/NodesCodegen.cpp:
(JSC::CommaNode::emitBytecode):
- parser/Parser.cpp:
(JSC::Parser<LexerType>::parseVariableDeclarationList):
(Parser<LexerType>::parseExpression):
Shift the location of subsequent sub-expressions to be after the comma. Add breakpoint pause
locations for each subsequent sub-expression.
Source/WebInspectorUI:
Minifiers sometimes use
,
instead of;
as a way of compressing multiple statements into
a single statement (e.g. inside anif
conditional). This makes stepping through minified
code much less useful, as our current stepping logic is based on expressions (not including
step in or step out). In most cases, we do actually want to treat each sub-expression in a
comma expression as a statement so as to emulate the behaviour as if there were;
instead.
- UserInterface/Workers/Formatter/JSFormatter.js:
(JSFormatter.prototype._isLikelyToHaveNewline):
(JSFormatter.prototype._handleTokenAtNode):
Put each sub-expression in a comma expression on it's own line.
LayoutTests:
- inspector/debugger/breakpoints/resources/dump-functions.js:
- inspector/debugger/breakpoints/resources/dump-general.js:
- inspector/debugger/breakpoints/resolved-dump-all-pause-locations-expected.txt:
- inspector/debugger/breakpoints/resolved-dump-each-line-expected.txt:
- inspector/debugger/stepping/stepOver.html:
- inspector/debugger/stepping/stepOver-expected.txt:
- inspector/debugger/stepping/stepping-function-calls.html:
- inspector/debugger/stepping/stepping-function-calls-expected.txt:
- inspector/debugger/stepping/stepping-loops.html:
- inspector/debugger/stepping/stepping-loops-expected.txt:
- inspector/debugger/stepping/stepping-misc.html:
- inspector/debugger/stepping/stepping-misc-expected.txt:
- inspector/formatting/resources/javascript-tests/for-statements.js:
- inspector/formatting/resources/javascript-tests/for-statements-expected.js:
- inspector/formatting/resources/javascript-tests/if-statements.js:
- inspector/formatting/resources/javascript-tests/if-statements-expected.js:
- inspector/formatting/resources/javascript-tests/sample-jquery-expected.js:
- inspector/formatting/resources/javascript-tests/sample-jquery-expected.js:
- 9:33 PM Changeset in webkit [259780] by
-
- 4 edits in trunk/Source
WTF::Persistence::VectorCoder and IPC::VectorArgumentCoder should use checked arithmetic
<https://webkit.org/b/210227>
<rdar://problem/60832243>
Reviewed by Alex Christensen.
Source/WebKit:
- Platform/IPC/ArgumentCoders.h:
(IPC::VectorArgumentCoder::decode):
- Use safeCast<> to cast from uint64_t to size_t.
- Use checked arithemtic for multiplication.
Source/WTF:
- wtf/persistence/PersistentCoders.h:
(WTF::Persistence::VectorCoder::decode):
- Use checked arithemtic for multiplication.
- 9:01 PM Changeset in webkit [259779] by
-
- 2 edits in trunk/Source/WebKit
Fix WebContent process launching after r259758.
- WebProcess/com.apple.WebProcess.sb.in:
- 8:32 PM Changeset in webkit [259778] by
-
- 2 edits in trunk/Source/WebKit
Enable incremental PDF loading.
<rdar://problem/60396263> and https://bugs.webkit.org/show_bug.cgi?id=210241
Reviewed by Tim Horton.
- FeatureFlags/WebKit.plist:
- 8:17 PM Changeset in webkit [259777] by
-
- 4 edits in trunk/LayoutTests
[WPE] Gardening, update baselines after r259296
https://bugs.webkit.org/show_bug.cgi?id=210242
Unreviewed gardening.
- platform/wpe/css2.1/20110323/margin-applies-to-006-expected.txt:
- platform/wpe/ietestcenter/css3/bordersbackgrounds/border-radius-applies-to-012-expected.txt:
- platform/wpe/tables/mozilla_expected_failures/dom/appendCol1-expected.txt:
- 7:40 PM Changeset in webkit [259776] by
-
- 2 edits in trunk/LayoutTests
[WPE] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=210240
Unreviewed gardening.
- platform/wpe/TestExpectations:
- 6:37 PM Changeset in webkit [259775] by
-
- 2 edits in trunk/Source/WebKit
UserMediaCaptureManagerProxy::clone should validate its parameters
<https://webkit.org/b/210221>
<rdar://problem/61063019>
Reviewed by Alex Christensen.
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(MESSAGE_CHECK): Define (and undef) new macro for assertion.
(WebKit::UserMediaCaptureManagerProxy::clone): Change ASSERT()
to MESSAGE_CHECK().
- 6:10 PM Changeset in webkit [259774] by
-
- 2 edits in trunk/Source/WebKit
WebKit::ShareableBitmap::Handle::decode() should validate m_size instance variables
<https://webkit.org/b/210211>
<rdar://problem/60543986>
Reviewed by Alex Christensen.
- Shared/ShareableBitmap.cpp:
(WebKit::ShareableBitmap::Handle::decode): Return early if
either m_size instance variable is less than zero.
- 5:43 PM Changeset in webkit [259773] by
-
- 7 edits2 adds in trunk
querySelector("#\u0000") should match an element with ID U+FFFD
https://bugs.webkit.org/show_bug.cgi?id=210119
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Import test coverage from upstream WPT.
- web-platform-tests/dom/nodes/ParentNode-querySelector-escapes-expected.txt: Added.
- web-platform-tests/dom/nodes/ParentNode-querySelector-escapes.html: Added.
Source/WebCore:
As per the specification [1][2], we should preprocess the input string before performing
CSS tokenization. The preprocessing step replaces certain characters in the input string.
However, our code did not have this preprocessing step and instead was trying to deal
with those characters during tokenization. This is however not working as expected for
the '\0' character (which is supposed to be replaced with U+FFFD REPLACEMENT CHARACTER)
because our code deals with StringViews of the input String and just converts part of
the input stream to Strings / AtomStrings.
To address the issue, this patch adds a preprocessing step that replaces the '\0'
character with the U+FFFD REPLACEMENT CHARACTER). I opted not to replace '\r' or '\f'
characters since our tokenizer seems to be dealing fine with those.
[1] https://drafts.csswg.org/css-syntax/#input-preprocessing
[2] https://drafts.csswg.org/css-syntax/#parser-entry-points
Test: imported/w3c/web-platform-tests/dom/nodes/ParentNode-querySelector-escapes.html
- css/parser/CSSTokenizer.cpp:
(WebCore::preprocessString):
(WebCore::CSSTokenizer::CSSTokenizer):
(WebCore::CSSTokenizer::lessThan):
(WebCore::CSSTokenizer::hyphenMinus):
(WebCore::CSSTokenizer::hash):
(WebCore::CSSTokenizer::reverseSolidus):
(WebCore::CSSTokenizer::letterU):
(WebCore::CSSTokenizer::consumeNumber):
(WebCore::CSSTokenizer::consumeIdentLikeToken):
(WebCore::CSSTokenizer::consumeStringTokenUntil):
(WebCore::CSSTokenizer::consumeUnicodeRange):
(WebCore::CSSTokenizer::consumeUrlToken):
(WebCore::CSSTokenizer::consumeBadUrlRemnants):
(WebCore::CSSTokenizer::consumeSingleWhitespaceIfNext):
(WebCore::CSSTokenizer::consumeIfNext):
(WebCore::CSSTokenizer::consumeName):
(WebCore::CSSTokenizer::consumeEscape):
(WebCore::CSSTokenizer::nextTwoCharsAreValidEscape):
(WebCore::CSSTokenizer::nextCharsAreNumber):
(WebCore::CSSTokenizer::nextCharsAreIdentifier):
- css/parser/CSSTokenizer.h:
- css/parser/CSSTokenizerInputStream.h:
(WebCore::CSSTokenizerInputStream::nextInputChar const):
(WebCore::CSSTokenizerInputStream::peek const):
(WebCore::CSSTokenizerInputStream::peekWithoutReplacement const): Deleted.
Source/WTF:
- wtf/text/StringImpl.cpp:
(WTF::StringImpl::replace):
Slightly optimize the 16-bit code path of StringImpl::replace(). Since we know
there is no character match from indexes 0 to i, we can simply use memcpy for
this range.
- 5:42 PM Changeset in webkit [259772] by
-
- 10 edits in trunk
_corsDisablingPatterns should allow security policy access to those patterns
https://bugs.webkit.org/show_bug.cgi?id=210218
<rdar://problem/61395166>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-04-08
Reviewed by Timothy Hatcher.
Source/WebCore:
This gives WKWebViewConfiguration._corsDisablingPatterns power similar to WKBundleAddOriginAccessWhitelistEntry
but its API is per-WKWebView (even if its implementation is unfortunately currently process global in the web process).
Functionality covered by a new API test.
- page/Page.cpp:
(WebCore::m_loadsFromNetwork):
- page/PageConfiguration.h:
- page/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::canRequest const):
(WebCore::SecurityOrigin::canDisplay const):
- page/SecurityPolicy.cpp:
(WebCore::originAccessPatterns):
(WebCore::SecurityPolicy::isAccessWhiteListed):
(WebCore::SecurityPolicy::allowAccessTo):
(WebCore::SecurityPolicy::isAccessToURLWhiteListed): Deleted.
- page/SecurityPolicy.h:
Source/WebKit:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::m_processDisplayName):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
- 5:41 PM Changeset in webkit [259771] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r257758): Launch time performance regression
https://bugs.webkit.org/show_bug.cgi?id=210157
<rdar://problem/61119881>
Reviewed by Alex Christensen.
Address a launch time performance regression in the WebProcessPool constructor
by starting a potentially slow server call in the constructor, and only waiting
for its result if it has not been received when the value is needed.
- UIProcess/WebProcessPool.cpp:
(WebProcessPool::WebProcessPool): Start initialization function in constructor,
rather than blocking for the
- 5:38 PM Changeset in webkit [259770] by
-
- 4 edits in trunk
WKWebViews should behave as if they had loaded something after restoring session state
https://bugs.webkit.org/show_bug.cgi?id=210097
<rdar://problem/58778490>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-04-08
Reviewed by Chris Dumez.
Source/WebKit:
Specifically, we don't want to close a WKWebView after restoring the session state into another
WKWebView into it then navigating to a phishing page. We want to be at the previous page after
the user clicks "Go back".
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::restoreFromSessionState):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
- 5:38 PM Changeset in webkit [259769] by
-
- 2 edits in branches/safari-610.1.9-branch/Source/WebCore
Cherry-pick r259766. rdar://problem/61487124
REGRESSION (r258525): Occasional crashes under TextManipulationController::observeParagraphs
https://bugs.webkit.org/show_bug.cgi?id=210215
<rdar://problem/61362512>
Reviewed by Darin Adler.
In the case where
startOfParagraph
orendOfParagraph
return a nullPosition
, we end up crashing under
TextManipulationController::observeParagraphs while creatingParagraphContentIterator
, which expects non-null
Position
s because it dereferences the result ofmakeBoundaryPoint
.
Avoid this crash for now by bailing if either the start or end positions are null. Tests to be added in a
followup patch.
- editing/TextManipulationController.cpp: (WebCore::TextManipulationController::observeParagraphs):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259766 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:20 PM Changeset in webkit [259768] by
-
- 2 edits in trunk/Source/WebKit
Add curly braces after one line if statement for the case when we aren't using the internal SDK
https://bugs.webkit.org/show_bug.cgi?id=210225
<rdar://problem/61485209>
Reviewed by David Kilzer.
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::initializeAppBoundDomains):
- 5:06 PM Changeset in webkit [259767] by
-
- 51 edits in trunk
Remove ENABLE_INTL define
https://bugs.webkit.org/show_bug.cgi?id=210164
Reviewed by Darin Adler.
.:
- Source/cmake/OptionsFTW.cmake:
- Source/cmake/OptionsMac.cmake:
- Source/cmake/OptionsWin.cmake:
- Source/cmake/WebKitFeatures.cmake:
- Source/cmake/tools/vsprops/FeatureDefines.props:
- Source/cmake/tools/vsprops/FeatureDefinesCairo.props:
Source/JavaScriptCore:
- Scripts/generateIntlCanonicalizeLanguage.py:
- builtins/DatePrototype.js:
- runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncToLocaleString):
- runtime/DatePrototype.cpp:
(JSC::DatePrototype::finishCreation):
- runtime/IntlCollator.cpp:
- runtime/IntlCollator.h:
- runtime/IntlCollatorConstructor.cpp:
- runtime/IntlCollatorConstructor.h:
- runtime/IntlCollatorPrototype.cpp:
- runtime/IntlCollatorPrototype.h:
- runtime/IntlDateTimeFormat.cpp:
- runtime/IntlDateTimeFormat.h:
- runtime/IntlDateTimeFormatConstructor.cpp:
- runtime/IntlDateTimeFormatConstructor.h:
- runtime/IntlDateTimeFormatPrototype.cpp:
- runtime/IntlDateTimeFormatPrototype.h:
- runtime/IntlNumberFormat.cpp:
- runtime/IntlNumberFormat.h:
- runtime/IntlNumberFormatConstructor.cpp:
- runtime/IntlNumberFormatConstructor.h:
- runtime/IntlNumberFormatPrototype.cpp:
- runtime/IntlNumberFormatPrototype.h:
- runtime/IntlObject.cpp:
- runtime/IntlObject.h:
- runtime/IntlObjectInlines.h:
- runtime/IntlPluralRules.cpp:
- runtime/IntlPluralRules.h:
- runtime/IntlPluralRulesConstructor.cpp:
- runtime/IntlPluralRulesConstructor.h:
- runtime/IntlPluralRulesPrototype.cpp:
- runtime/IntlPluralRulesPrototype.h:
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::visitChildren):
- runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::defaultCollator const):
(JSC::JSGlobalObject::pluralRulesStructure):
- runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncDateTimeFormat):
- runtime/NumberPrototype.cpp:
(JSC::numberProtoFuncToLocaleString):
- runtime/StringPrototype.cpp:
(JSC::StringPrototype::finishCreation):
(JSC::stringProtoFuncLocaleCompare):
(JSC::stringProtoFuncToLocaleUpperCase):
- runtime/VM.cpp:
(JSC::VM::VM):
- runtime/VM.h:
Source/WTF:
AppleWin (and, following suit, FTW) was the only upstream platform turning ENABLE_INTL off;
now that their headers have been upgraded to ICU 62, this define can be removed entirely.
Going forward, we thus assume JSC has an Intl object and can simply runtime-guard any new features added to it.
- wtf/PlatformEnable.h:
- wtf/PlatformEnableCocoa.h:
Tools:
- Scripts/webkitperl/FeatureList.pm:
- 4:59 PM Changeset in webkit [259766] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION (r258525): Occasional crashes under TextManipulationController::observeParagraphs
https://bugs.webkit.org/show_bug.cgi?id=210215
<rdar://problem/61362512>
Reviewed by Darin Adler.
In the case where
startOfParagraph
orendOfParagraph
return a nullPosition
, we end up crashing under
TextManipulationController::observeParagraphs while creatingParagraphContentIterator
, which expects non-null
Position
s because it dereferences the result ofmakeBoundaryPoint
.
Avoid this crash for now by bailing if either the start or end positions are null. Tests to be added in a
followup patch.
- editing/TextManipulationController.cpp:
(WebCore::TextManipulationController::observeParagraphs):
- 4:50 PM Changeset in webkit [259765] by
-
- 2 edits in trunk/Source/WebKit
Handle [PDFDocument initWithProvider:] returning nil
<rdar://problem/61482395> and https://bugs.webkit.org/show_bug.cgi?id=210224
Reviewed by Geoff Garen.
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::threadEntry): Treat a nil PDFDocument as "non-linearized, fallback to normal loading"
- 3:57 PM Changeset in webkit [259764] by
-
- 4 edits in trunk/Source/WebCore
Release WebGLLayer earlier in ~GraphicsContextGLOpenGL
https://bugs.webkit.org/show_bug.cgi?id=210213
Patch by Kenneth Russell <kbr@chromium.org> on 2020-04-08
Reviewed by Dean Jackson.
Release WebGLLayer earlier and remove public context property,
which is no longer called.
- platform/graphics/cocoa/GraphicsContextGLOpenGLCocoa.mm:
(WebCore::GraphicsContextGLOpenGL::~GraphicsContextGLOpenGL):
- platform/graphics/cocoa/WebGLLayer.h:
- platform/graphics/cocoa/WebGLLayer.mm:
- 3:55 PM Changeset in webkit [259763] by
-
- 3 edits in trunk/LayoutTests
REGRESSION: [ Mojave wk1 Debug and iOS wk2 Debug ] http/tests/IndexedDB/collect-IDB-objects.https.html is flaky timing out and crashing.
https://bugs.webkit.org/show_bug.cgi?id=210219
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- platform/mac-wk1/TestExpectations:
- 3:41 PM Changeset in webkit [259762] by
-
- 35 edits29 adds in trunk
Track editable elements on screen
https://bugs.webkit.org/show_bug.cgi?id=209888
<rdar://problem/61196886>
Reviewed by Simon Fraser.
Source/JavaScriptCore:
Add feature define to track editable elements on screen (enabled by default on iOS and iOS Simulator).
- Configurations/FeatureDefines.xcconfig:
Source/WebCore:
Amend EventRegion to store a region of all the hit test visible rects of editable elements
on the page. This data will be sent over to the UI process so that it can quickly determine
if a search rect would intersect any editable elements.
An element is considered editable if it has CSS -webkit-user-modify value that isn't read-only.
Note that the value of the HTML content attribute contenteditable is internally converted to
its -webkit-user-modify equivalent (e.g. contenteditable="true" <=> "-webkit-user-modify: read-write").
Tests: editing/editable-region/fixed-and-absolute-contenteditable-scrolled.html
editing/editable-region/float-contenteditable.html
editing/editable-region/hit-test-basic.html
editing/editable-region/hit-test-fixed.html
editing/editable-region/hit-test-overlap.html
editing/editable-region/iframe.html
editing/editable-region/input-basic.html
editing/editable-region/out-hanging-child-of-contenteditable.html
editing/editable-region/overflow-scroll-text-field-and-contenteditable.html
editing/editable-region/relative-inside-fixed-contenteditable-scrolled.html
editing/editable-region/relative-inside-transformed-contenteditable.html
editing/editable-region/transformed-scrolled-on-top-of-fixed-contenteditables.html
- Configurations/FeatureDefines.xcconfig: Add feature define to track editable elements on
screen (enabled by default on iOS and iOS Simulator).
- dom/Document.h:
(WebCore::Document::mayHaveEditableElements const):
(WebCore::Document::setMayHaveEditableElements):
Add some state to each document to track whether it may have an editable element or not. This
value represents a "maybe" because it is only set and never unset. It is set if the style resolver
saw an element with an editable style. This flag is used as a performance optimization to avoid
creating an event region if there are no editable elements on the page.
- page/Frame.cpp:
(WebCore::Frame::invalidateContentEventRegionsIfNeeded): Check if there are any editable elements.
If so, invalidate the event region.
- rendering/EventRegion.cpp:
(WebCore::EventRegion::operator== const): Update for editable region.
(WebCore::EventRegion::unite): If the specified style has a writable CSS user-modify value then
unite the region with the editable region.
(WebCore::EventRegion::translate): Update for editable region.
(WebCore::EventRegion::containsEditableElementsInRect const): Added. Check if the specified rect
intersects the editable region. If it does then that means there are one or more editable elements
whose bounds intersect that rect. Otherwise, there are none.
(WebCore::EventRegion::dump const): Update for editable region.
- rendering/EventRegion.h:
(WebCore::EventRegion::intersects const): Added.
(WebCore::EventRegion::rectsForEditableElements const): Return the rects in the editable region.
(WebCore::EventRegion::encode const): Encode the editable region.
(WebCore::EventRegion::decode): Decode the editable region.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintObject): Traverse descendants if the page has any editable elements
so that we find all of them.
- rendering/RenderElement.cpp:
(WebCore::RenderElement::styleWillChange): Amend the event region invalidation criterion to look
for a change in writability. If there was a change (e.g. read-only to read-write) then invalidate
the event region to force a re-computation of it.
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::invalidateEventRegion): If the document has editable elements then we need
to create an event region.
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateEventRegion): Update the region if there are editable elements.
(WebCore::RenderLayerBacking::paintDebugOverlays): Paint the editable elements in the debug overlay.
For now, I piggybacked (like was done for touch-action regions) on the non-fast scrollable region
flag (not shown in the patch). I will look to add a dedicated debug overlay flag in a follow up patch.
- style/StyleTreeResolver.cpp:
(WebCore::Style::TreeResolver::resolveElement): Mark the document as having an editable element if
the style for the element being resolved is writable.
Source/WebCore/PAL:
Add feature define to track editable elements on screen (enabled by default on iOS and iOS Simulator).
- Configurations/FeatureDefines.xcconfig:
Source/WebKit:
Speed up -_requestTextInputContextsInRect when the rect does not intersect any editable
elements by over 4450 times on reddit.com! Another way of saying this is that it reduces
the time from an average of 303.252ms to 0.0680625ms in a Production build.
This speed up is accomplished by having the web process track the rects of the editable
elements on the page and send this information as a region data structure over to the UI
process as part of the EventRegion object. This region is used to determine if there
*may* be an editable element inside the rectangele. It never reports a false negative,
but it can report a false positive: a rectangle is over an editable element when it
actually isn't, (e.g. there is a non-composited element with a higher z-order than the
editable element that intersects the search rect).
- Configurations/FeatureDefines.xcconfig: Add feature define to track editable elements on
screen (enabled by default on iOS and iOS Simulator).
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _mayContainEditableElementsInRect:]): Added.
(-[WKWebView _requestTextInputContextsInRect:completionHandler:]): Checks if the search
rects hits an editable element in a RemoteLayerTree node's editable region. If it does
not hit any then we know there are no editable elements and return immediately. If it
does hit something then we still need to ask the web process to perform a hit test to
find the actual elements, respecting z-ordering (which is lost when these elements' rects
are united to form the editable region).
- UIProcess/API/Cocoa/WKWebViewPrivate.h:
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.h:
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.mm:
(WebKit::collectDescendantViewsInRect): Added.
(WebKit::mayContainEditableElementsInRect): Added.
Source/WebKitLegacy/mac:
Add feature define to track editable elements on screen (enabled by default on iOS and iOS Simulator).
- Configurations/FeatureDefines.xcconfig:
Tools:
Add more unit tests for -_requestTextInputContextsInRect. Also add test infrastructure to
be able to verify that WebKit::mayContainEditableElementsInRect() works.
- TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
- TestRunnerShared/UIScriptContext/UIScriptController.h:
(WTR::UIScriptController::mayContainEditableElementsInRect):
Expose an internal function to test WebKit::mayContainEditableElementsInRect().
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Add feature define.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
(webViewLoadHTMLStringAndWaitForAllFramesToPaint): Renamed; formerly webViewLoadHTMLStringAndWaitForDOMLoadEvent.
Also make it wait for the next presentation update after we paint.
(TEST):
(squareCenteredAtPoint): Added.
(webViewLoadHTMLStringAndWaitForDOMLoadEvent): Deleted; renamed webViewLoadHTMLStringAndWaitForAllFramesToPaint().
- TestWebKitAPI/Tests/WebKitCocoa/editable-region-composited-and-non-composited-overlap.html: Added.
- TestWebKitAPI/ios/editable-region-composited-and-non-composited-overlap.html: Added.
- WebKitTestRunner/ios/UIScriptControllerIOS.h:
- WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptControllerIOS::mayContainEditableElementsInRect): Added.
LayoutTests:
Add some tests. Some of these tests were derived from a torture test page written by Simon Fraser.
- TestExpectations: Skip directory editing/editable-region everywhere. I will unskip this in the iOS TestExpectations file.
- editing/editable-region/fixed-and-absolute-contenteditable-scrolled-expected.txt: Added.
- editing/editable-region/fixed-and-absolute-contenteditable-scrolled.html: Added.
- editing/editable-region/float-contenteditable-expected.txt: Added.
- editing/editable-region/float-contenteditable.html: Added.
- editing/editable-region/hit-test-basic-expected.txt: Added.
- editing/editable-region/hit-test-basic.html: Added.
- editing/editable-region/hit-test-fixed-expected.txt: Added.
- editing/editable-region/hit-test-fixed.html: Added.
- editing/editable-region/hit-test-overlap-expected.txt: Added.
- editing/editable-region/hit-test-overlap.html: Added.
- editing/editable-region/iframe-expected.txt: Added.
- editing/editable-region/iframe.html: Added.
- editing/editable-region/input-basic-expected.txt: Added.
- editing/editable-region/input-basic.html: Added.
- editing/editable-region/out-hanging-child-of-contenteditable-expected.txt: Added.
- editing/editable-region/out-hanging-child-of-contenteditable.html: Added.
- editing/editable-region/overflow-scroll-text-field-and-contenteditable-expected.txt: Added.
- editing/editable-region/overflow-scroll-text-field-and-contenteditable.html: Added.
- editing/editable-region/relative-inside-fixed-contenteditable-scrolled-expected.txt: Added.
- editing/editable-region/relative-inside-fixed-contenteditable-scrolled.html: Added.
- editing/editable-region/relative-inside-transformed-contenteditable-expected.txt: Added.
- editing/editable-region/relative-inside-transformed-contenteditable.html: Added.
- editing/editable-region/resources/hit-test-utilities.js: Added.
(async shouldHaveEditableElementsInRect):
(async shouldNotHaveEditableElementsInRect):
(shouldNotHaveEditableElementsInRectForElement):
- editing/editable-region/transformed-scrolled-on-top-of-fixed-contenteditables-expected.txt: Added.
- editing/editable-region/transformed-scrolled-on-top-of-fixed-contenteditables.html: Added.
- platform/ios/TestExpectations: Unskip editing/editable-region.
- resources/ui-helper.js:
(window.UIHelper.mayContainEditableElementsInRect): Added. Convenience function that turns around
and calls the UIScriptController function of the same name and returns a boolean instead of a string.
- 3:38 PM Changeset in webkit [259761] by
-
- 35 edits7 adds in trunk
Should find touch-action elements inside non-composited iframes
https://bugs.webkit.org/show_bug.cgi?id=210041
<rdar://problem/61323558>
Reviewed by Simon Fraser.
Source/WebCore:
Fix up event region code to traverse non-composited iframes that have elements with a non-auto
touch-action. The event region is computed for each composited layer during a compositing layer
update and was retricted to being updated if the layer's associated document may have an element
with a non-auto touch-action. To make this work for non-composited iframes I find its enclosing
compositing layer, set a special bit that it needs an event region update because of the non-
composited child iframe and schedule a compositing layer update. When the update happens, it
checks to see if the special bit is set and if so overrides any restrictions that would have
prevented the event region from being updated. The painting code for widgets is also fixed up to
pass through an EventRegionContext to update during EventRegion painting.
This strategy works well for updating the event region. However debug paint overlays are not
updated (i.e. RenderLayerBacking::paintDebugOverlays() is not called) until the embedding client's
view is repainted. For now, to fix this up I added another a hack, a special bit (RenderView::needsRepaintHackAfterCompositingLayerUpdateForDebugOverlaysOnly())
that is only set if debug overlays are to be shown, to have the compositor repaint the view after
updating compositing layers.
Tests: pointerevents/ios/programmatic-touch-action-none-inside-iframe.html
pointerevents/ios/touch-action-none-inside-iframe.html
pointerevents/ios/touch-action-none-inside-nested-iframe.html
- dom/Document.cpp:
(WebCore::Document::invalidateEventRegionsForFrame): Added. Try to invalidate the event region.
This may fail if the document does not have an enclosing compositing layer for repaint (e.g. nested
composited iframes - see test pointerevents/ios/touch-action-none-inside-nested-iframe.html). If
this happens then recursive on our owner element's document. Recursion is used instead of a loop
to future proof this code for out-of-process (OOP) frames, which will likely introduce document proxy objects.
- dom/Document.h:
- page/Frame.cpp:
(WebCore::Frame::invalidateContentEventRegionsIfNeeded): Added. Check if our document has any elements with
a non-auto touch-action. If it does then ask the compositor if the enclosing compositing layer for
repaint's event region must be invalidated - it will only reply true if this is a non-composited iframe.
If it does then forward this invalidation request to the document. The reason I delegate to the document
instead of handling the logic here is to future proof this code for OOP iframes.
- page/Frame.h:
- page/FrameView.cpp:
(WebCore::FrameView::didLayout): Call Frame::invalidateContentEventRegionsIfNeeded(). Also while
I am here take out a ref on the document to ensure it lives through the end of this function, including
through the accessibility's postNotification() code that calls out to the embedding client.
(WebCore::FrameView::paintContents):
- page/FrameView.h:
- platform/ScrollView.cpp:
(WebCore::ScrollView::paint):
- platform/ScrollView.h:
- platform/Scrollbar.cpp:
(WebCore::Scrollbar::paint):
- platform/Scrollbar.h:
- platform/Widget.cpp:
(WebCore::Widget::paint):
- platform/Widget.h:
- platform/gtk/WidgetGtk.cpp:
(WebCore::Widget::paint):
- platform/ios/WidgetIOS.mm:
(WebCore::Widget::paint):
- platform/mac/WidgetMac.mm:
(WebCore::Widget::paint):
- platform/win/WidgetWin.cpp:
(WebCore::Widget::paint):
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintObject):
Pass an EventRegionContext through.
- rendering/RenderElement.cpp:
(WebCore::RenderElement::styleWillChange): Update code now that RendeLayer::invalidateEventRegion()
takes a reason.
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paint): Pass the EventRegionContext through. If are passed one then update
paint flags to collect event region.
(WebCore::RenderLayer::invalidateEventRegion): Changed return value from void to bool so as to indicate
to the caller whether the event region was actually invalidated. Also made it take an argument as
to the reason for the invalidation. If invalidation is due to a non-composited iframe then sets some
state and schedule a compositing layer update.
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateEventRegion):
(WebCore::RenderLayerBacking::setContentsNeedDisplay):
(WebCore::RenderLayerBacking::setContentsNeedDisplayInRect):
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::updateCompositingLayers):
Pass an EventRegionContext through
(WebCore::RenderLayerCompositor::viewNeedsToInvalidateEventRegionOfEnclosingCompositingLayerForRepaint const): Added.
- rendering/RenderLayerCompositor.h:
- rendering/RenderScrollbar.cpp:
(WebCore::RenderScrollbar::paint):
- rendering/RenderScrollbar.h:
- rendering/RenderView.h:
Pass an EventRegionContext through.
- rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paintContents): Translate the event region by our content paint offset.
(WebCore::RenderWidget::paint): Update for EventRegion. If painting the event region and the view
needs layout then do what we do now and bail out. Otherwise, proceed to paint the widget's content.
The changes to FrameView::didLayout() above means that for non-composited frames that need an event
region update they already performed a layout. So, these paints will be allowed to descend into
painting of the widget's content.
Source/WebKit:
Pass EventRegionContext through. It is unused as it's not applicable for plugin painting.
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::paint):
- WebProcess/Plugins/PluginView.h:
Source/WebKitLegacy/win:
Pass EventRegionContext through. It is unused as it's not applicable for plugin painting.
- Plugins/PluginView.h:
- Plugins/PluginViewWin.cpp:
(WebCore::PluginView::paint):
LayoutTests:
Add more tests.
- pointerevents/ios/programmatic-touch-action-none-inside-iframe-expected.txt: Added.
- pointerevents/ios/programmatic-touch-action-none-inside-iframe.html: Added.
- pointerevents/ios/resources/touch-action-none-inside-iframe.html: Added.
- pointerevents/ios/touch-action-none-inside-iframe-expected.txt: Added.
- pointerevents/ios/touch-action-none-inside-iframe.html: Added.
- pointerevents/ios/touch-action-none-inside-nested-iframe-expected.txt: Added.
- pointerevents/ios/touch-action-none-inside-nested-iframe.html: Added.
- 3:15 PM Changeset in webkit [259760] by
-
- 3 edits in trunk/Source/WebKit
Fix handling non-linearized PDFs when incremental PDF loading is enabled.
<rdar://problem/60619506> and https://bugs.webkit.org/show_bug.cgi?id=210208
Reviewed by Tim Horton (and I think Geoff Garen, probably. It's confusing.)
When we try to load a non-linearized PDF with PDFKit, it makes an outlandishly large range request
to try to verify the PDF file size.
That's covered by <rdar://problem/61473378>
Meanwhile we need to detect that and fallback to non-incremental PDF loading.
- WebProcess/Plugins/PDF/PDFPlugin.h:
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::receivedInvalidRangeRequest):
(WebKit::dataProviderGetBytesAtPositionCallback):
(WebKit::PDFPlugin::threadEntry):
(WebKit::PDFPlugin::installPDFDocument):
- 3:06 PM Changeset in webkit [259759] by
-
- 2 edits in trunk/LayoutTests
Unreviewed, unskip http/tests/notifications/event-listener-crash.html
This test should no longer be crashing after r258613.
- platform/mac-wk1/TestExpectations:
- 2:50 PM Changeset in webkit [259758] by
-
- 2 edits in trunk/Source/WebKit
Allow use of syscall from the WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=209920
Reviewed by Geoffrey Garen.
Add syscall to the WebContent sandbox on macOS.
- WebProcess/com.apple.WebProcess.sb.in:
- 2:41 PM Changeset in webkit [259757] by
-
- 8 edits in branches/safari-610.1.9-branch
Cherry-pick r259731. rdar://problem/61360282
Return app-bound sessions for instances where WKAppBoundDomains is
empty
https://bugs.webkit.org/show_bug.cgi?id=210124
<rdar://problem/61276630>
Reviewed by Brent Fulgham.
Source/WebKit:
No new tests. Behavior confirmed by existing In-App Browser Privacy
tests.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::sessionWrapperForTask): Remove the flag checking if In-App Browser Privacy is enabled. We should return an app-bound session if WKAppBoundDomains is empty so we no longer need to check the flag here.
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain): (WebKit::WebPageProxy::decidePolicyForNavigationAction):
- UIProcess/WebPageProxy.h: As described above, we no longer need to check the flag in this instance as we are determining behavior based on the WKAppBoundDomains list. Also moved the logic for checking an empty list to setIsNavigatingToAppBoundDomain, so it should take an Optional (WTF::nullopt indicates an empty list).
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::initializeAppBoundDomains): Use the flag to enable internal debugging for testing purposes.
- UIProcess/API/APIHTTPCookieStore.cpp: (API::HTTPCookieStore::filterAppBoundCookies): Flag no longer needed. This should be gated by whether the domains list is empty or not.
Tools:
Clean up test settings between tests.
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm: (cleanUpInAppBrowserPrivacyTestSettings):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259731 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 2:41 PM Changeset in webkit [259756] by
-
- 8 edits in branches/safari-610.1.9-branch
Revert r259655. rdar://problem/61360282
- 2:06 PM Changeset in webkit [259755] by
-
- 2 edits in trunk
[PlayStation] Update import of libdl stubs for new Angle dladdr use
https://bugs.webkit.org/show_bug.cgi?id=210200
Reviewed by Don Olmstead.
- Source/cmake/OptionsPlayStation.cmake:
Use find_package to get libdl wrappers on playstation, include
them in both executables and shared libraries.
- 1:54 PM Changeset in webkit [259754] by
-
- 4 edits in trunk/Source
[GTK4] Make PAL::systemBeep() work
https://bugs.webkit.org/show_bug.cgi?id=210158
Reviewed by Carlos Garcia Campos.
Source/WebCore/PAL:
- pal/system/gtk/SoundGtk.cpp:
(PAL::systemBeep): Use gdk_display_beep(), which works both with GTK3 and GTK4.
Source/WTF:
- wtf/Platform.h: Define a value for GDK_VERSION_MIN_REQUIRED suitable for GTK4.
- 1:15 PM Changeset in webkit [259753] by
-
- 6 edits in trunk
[macOS] Crash under WebKit::SandboxExtension::consume
https://bugs.webkit.org/show_bug.cgi?id=210188
Reviewed by Geoffrey Garen.
Source/WebKit:
When issuing a mach lookup extension to the database mapping service in the UI process fails, the WebContent
process will crash when trying to consume the extension.
No new tests, since I am not able to reproduce the issue.
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/com.apple.WebProcess.sb.in:
LayoutTests:
- fast/sandbox/mac/sandbox-mach-lookup-expected.txt:
- fast/sandbox/mac/sandbox-mach-lookup.html:
- 1:14 PM Changeset in webkit [259752] by
-
- 9 edits in trunk/Source
Make more use of FrameLoader pageID/frameID getters
https://bugs.webkit.org/show_bug.cgi?id=210182
Patch by Rob Buis <rbuis@igalia.com> on 2020-04-08
Reviewed by Chris Dumez.
Make more use of FrameLoader pageID/frameID getters, before
this change they were only used internally in FrameLoader.
Source/WebCore:
- dom/Document.cpp:
(WebCore::Document::pageID const):
(WebCore::Document::frameID const):
- html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::handleClick):
- loader/CookieJar.cpp:
(WebCore::CookieJar::cookies const):
(WebCore::CookieJar::cookieRequestHeaderFieldProxy):
(WebCore::CookieJar::setCookies):
(WebCore::CookieJar::cookieRequestHeaderFieldValue const):
(WebCore::CookieJar::getRawCookies const):
- loader/NavigationAction.cpp:
(WebCore::createGlobalFrameIdentifier):
- loader/PolicyChecker.cpp:
- testing/Internals.cpp:
(WebCore::Internals::frameIdentifier const):
Source/WebKit:
- WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::addParametersShared):
- 1:06 PM Changeset in webkit [259751] by
-
- 3 edits in trunk/Source/WebCore
Additional cleanup from "Hit test with clipPath referencing parent element causes infinite recursion"
https://bugs.webkit.org/show_bug.cgi?id=210203
<rdar://problem/60002347>
Reviewed by Geoffrey Garen.
As suggested from the review in bug #209773, this incorporates some additional cleanup, including making the
SVGHitTestCycleDetectionScope constructor explicit, and clarifying the add/remove with the WeakHashSet, since
WeakPtr's operator* returns a reference to the template type (which is what we need).
No new tests as this is covered by existing tests and there are no functional changes.
- rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGHitTestCycleDetectionScope::SVGHitTestCycleDetectionScope):
(WebCore::SVGHitTestCycleDetectionScope::~SVGHitTestCycleDetectionScope):
- rendering/svg/SVGRenderSupport.h:
- 1:05 PM Changeset in webkit [259750] by
-
- 2 edits in trunk/Source/WebKit
Follow-up: [iOS] WebPageProxy::didCommitLoadForFrame should not crash with null or empty
mimeType
parameter
<https://webkit.org/b/209994>
<rdar://problem/60068700>
- UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
- Remove UNUSED_PARAM() in lieu of deleting parameter names.
- 1:05 PM Changeset in webkit [259749] by
-
- 2 edits in trunk/LayoutTests
[macOS debug] Layout Test imported/w3c/web-platform-tests/media-source/SourceBuffer-abort-readyState.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=187911
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 1:02 PM Changeset in webkit [259748] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: Search: populate the search field with the current selection when using the global search shortcut
https://bugs.webkit.org/show_bug.cgi?id=210207
Reviewed by Timothy Hatcher.
Add a setting to control whether the global search (⇧⌘F) should be populated by the current
selection (if it exists), allowing for a quicker flow for "show me everywhere this exists".
- UserInterface/Base/Setting.js:
- UserInterface/Views/SettingsTabContentView.js:
(WI.SettingsTabContentView.prototype._createGeneralSettingsView):
- UserInterface/Base/Main.js:
(WI._focusSearchField)
- Localizations/en.lproj/localizedStrings.js:
- 1:01 PM Changeset in webkit [259747] by
-
- 11 edits in trunk/Source/JavaScriptCore
[JSC] Threading JSGlobalObject in RegExp::match properly
https://bugs.webkit.org/show_bug.cgi?id=210174
Reviewed by Saam Barati.
We thread JSGlobalObject* properly in RegExp::match instead of accessing VM::topCallFrame, which is too hacky.
- runtime/RegExp.cpp:
(JSC::RegExp::match):
(JSC::RegExp::matchConcurrently):
- runtime/RegExp.h:
- runtime/RegExpGlobalData.h:
- runtime/RegExpGlobalDataInlines.h:
(JSC::RegExpGlobalData::performMatch):
- runtime/RegExpInlines.h:
(JSC::RegExp::matchInline):
- runtime/RegExpMatchesArray.h:
(JSC::createRegExpMatchesArray):
- runtime/RegExpObjectInlines.h:
(JSC::RegExpObject::matchInline):
(JSC::collectMatches):
- runtime/RegExpPrototype.cpp:
(JSC::regExpProtoFuncSearchFast):
(JSC::genericSplit):
(JSC::regExpProtoFuncSplitFast):
- runtime/StringPrototype.cpp:
(JSC::removeUsingRegExpSearch):
(JSC::replaceUsingRegExpSearch):
- testRegExp.cpp:
(testOneRegExp):
(runFromFiles):
- 12:59 PM Changeset in webkit [259746] by
-
- 3 edits in trunk/Tools
Remove a workaround that allows many API tests to pass on iOS 13.2
https://bugs.webkit.org/show_bug.cgi?id=209709
Reviewed by Megan Gardner.
Removes a workaround added in r256297 to get API tests passing on iOS 13.2. This workaround swizzled
-[NSBundle bundleIdentifier]
to return a non-null string, in order to avoid a crash introduced by
<rdar://problem/56301207>. This was subsequently fixed in <rdar://problem/56790195>, which has made its way
into iOS 13.4.
- TestWebKitAPI/cocoa/TestWKWebView.mm:
(+[WKWebView initialize]): Deleted.
- TestWebKitAPI/ios/UIKitSPI.h:
- 12:25 PM Changeset in webkit [259745] by
-
- 2 edits in trunk/Tools
[macOS] TestWebKitAPI.WKHTTPCookieStore.WithoutProcessPoolDuplicates is failing
https://bugs.webkit.org/show_bug.cgi?id=209992
Reviewed by Geoffrey Garen.
Make sure existing cookies are cleared before test. Otherwise, they will affect test result.
- TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
(clearCookies):
(TEST):
- 12:16 PM Changeset in webkit [259744] by
-
- 16 edits10 adds in trunk
Web Inspector: Storage: cannot clear out multiple or all local storage entries
https://bugs.webkit.org/show_bug.cgi?id=209867
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
- inspector/protocol/DOMStorage.json:
Add a
clearDOMStorageItems
command instead of callingremoveDOMStorageItem
for each key.
Source/WebCore:
Tests: inspector/storage/clearDOMStorageItems.html
inspector/storage/getDOMStorageItems.html
inspector/storage/removeDOMStorageItem.html
inspector/storage/setDOMStorageItem.html
- inspector/agents/InspectorDOMStorageAgent.h:
- inspector/agents/InspectorDOMStorageAgent.cpp:
(WebCore::InspectorDOMStorageAgent::clearDOMStorageItems): Added.
Add aclearDOMStorageItems
command instead of callingremoveDOMStorageItem
for each key.
Source/WebInspectorUI:
- UserInterface/Models/DOMStorageObject.js:
(WI.DOMStorageObject.prototype.removeItem):
(WI.DOMStorageObject.prototype.setItem):
(WI.DOMStorageObject.prototype.clear): Added.
(WI.DOMStorageObject.prototype.itemsCleared):
(WI.DOMStorageObject.prototype.itemRemoved):
(WI.DOMStorageObject.prototype.itemAdded):
(WI.DOMStorageObject.prototype.itemUpdated):
Add some assertions.
- UserInterface/Views/DOMStorageContentView.js:
(WI.DOMStorageContentView):
(WI.DOMStorageContentView.prototype.get navigationItems):
(WI.DOMStorageContentView.prototype._handleClearNavigationItemClicked): Added.
Add a "Clear" navigation item that calls the newDOMStorage.clearDOMStorageItems
.
- UserInterface/Views/DataGrid.js:
(WI.DataGrid.prototype.removeChild):
If the removed item was selected, select the next (or previous if there is no next) item.
- UserInterface/Views/CookieStorageContentView.js:
(WI.CookieStorageContentView):
(WI.CookieStorageContentView.prototype.get navigationItems):
(WI.CookieStorageContentView.prototype._handleClearNavigationItemClicked): Added.
Drive-by: also add a "Clear" navigation item that callsPage.deleteCookie
for each row.
- UserInterface/Protocol/DOMStorageObserver.js:
(WI.DOMStorageObserver.prototype.domStorageItemUpdated):
- UserInterface/Controllers/DOMStorageManager.js:
(WI.DOMStorageManager.prototype.itemUpdated):
Drive-by: renamevalue
tonewValue
to match the protocol.
- Localizations/en.lproj/localizedStrings.js:
LayoutTests:
- inspector/storage/clearDOMStorageItems.html: Added.
- inspector/storage/clearDOMStorageItems-expected.txt: Added.
- inspector/storage/domStorage-events.html:
- inspector/storage/domStorage-events-expected.txt:
- inspector/storage/getDOMStorageItems.html: Added.
- inspector/storage/getDOMStorageItems-expected.txt: Added.
- inspector/storage/removeDOMStorageItem.html: Added.
- inspector/storage/removeDOMStorageItem-expected.txt: Added.
- inspector/storage/setDOMStorageItem.html: Added.
- inspector/storage/setDOMStorageItem-expected.txt: Added.
- inspector/storage/resources/storage-utilities.js: Added.
(clearStorages):
(TestPage.registerInitializer.InspectorTest.Storage.async logEntries):
- 12:12 PM Changeset in webkit [259743] by
-
- 2 edits in trunk/Source/WebKit
Remove unused WebProcessPool::sendToAllProcessesRelaunchingThemIfNecessary and WebProcessPool::sendToOneProcess
https://bugs.webkit.org/show_bug.cgi?id=210199
Patch by Michael Catanzaro <Michael Catanzaro> on 2020-04-08
Reviewed by Alex Christensen.
Remove unused functions.
- UIProcess/WebProcessPool.h:
(WebKit::WebProcessPool::sendToAllProcessesRelaunchingThemIfNecessary): Deleted.
(WebKit::WebProcessPool::sendToOneProcess): Deleted.
- 12:06 PM Changeset in webkit [259742] by
-
- 4 edits1 add in trunk
[JSC] MultiDeleteByOffset should tell correct result AbstractValue in AI
https://bugs.webkit.org/show_bug.cgi?id=210175
<rdar://problem/61433817>
Reviewed by Saam Barati.
JSTests:
- stress/multi-delete-by-offset-ai-result.js: Added.
(foo):
Source/JavaScriptCore:
Since the result value of MultiDeleteByOffset should be used, AI should set boolean AbstractValue as a result of MultiDeleteByOffset.
We also add MultiDeleteByOffset to DFGStoreBarrierInsertionPhase since it can write StructureID: this means that write-barrier is necessary.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGStoreBarrierInsertionPhase.cpp:
- 12:02 PM Changeset in webkit [259741] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Uncaught Exception: undefined is not an object (evaluating 'this._target.NetworkAgent.getResponseBody')
https://bugs.webkit.org/show_bug.cgi?id=210168
Reviewed by Timothy Hatcher.
If a script is loaded by the main page and a
Worker
, theWI.Script
from theWorker
will be associated with theWI.Resource
from the main page, the call stack in the Sources
Tab will use theWI.Resource
over theWI.Script
, but theWI.Target
for aWorker
does
not have aNetworkAgent
orPageAgent
. As such, insideWI.Resource
, if the_target
is
aWI.TargetType.Worker
, use theDebuggerAgent
.
- UserInterface/Models/Resource.js:
(WI.Resource.prototype.requestContentFromBackend):
- UserInterface/Main.html:
Drive-by: remove unnecessary
<script>
.
- 12:00 PM Changeset in webkit [259740] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: don't reveal the prototype methods when using the "Expand All" context menu item for property-only object trees
https://bugs.webkit.org/show_bug.cgi?id=210123
Reviewed by Timothy Hatcher.
- UserInterface/Views/ObjectTreeView.css:
(.object-tree.properties-only.json-only .object-tree-property.prototype-property, .object-tree.properties-only.json-only .object-tree-property.prototype-property + .children): Added.
(.object-tree.properties-only.json-only .object-tree-property.prototype-property): Deleted.
- 11:57 AM Changeset in webkit [259739] by
-
- 2 edits in trunk/Source/WebKit
Web Inspector: only broadcast the console message to main frames
https://bugs.webkit.org/show_bug.cgi?id=210122
Reviewed by Timothy Hatcher.
- WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::broadcastConsoleMessage):
- 11:53 AM Changeset in webkit [259738] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Sources: support copying selected call frame(s) in the Call Stack
https://bugs.webkit.org/show_bug.cgi?id=210172
Reviewed by Timothy Hatcher.
- UserInterface/Views/SourcesTabContentView.js:
(WI.SourcesTabContentView.prototype.handleCopyEvent): Added.
- UserInterface/Views/SourcesNavigationSidebarPanel.js:
(WI.SourcesNavigationSidebarPanel):
(WI.SourcesNavigationSidebarPanel.prototype.handleCopyEvent): Added.
Copy the function name and source location for each selected call frame. If the selected
call frames span an async boundary, include the async boundary in the form--- <name> ---
where name is the reason for the async behavior (e.g.addEventListener
). If the selected
call frames span multiple threads (e.g.Worker
), include the thread name and indent all
of the call frames for that thread.
- UserInterface/Views/CallFrameTreeElement.js:
(WI.CallFrameTreeElement):
(WI.CallFrameTreeElement.prototype.get isAsyncBoundaryCallFrame): Added.
- 11:50 AM Changeset in webkit [259737] by
-
- 2 edits in trunk/Source/WebCore
WebContent process crashes in com.apple.WebCore: rx::IOSurfaceSurfaceCGL::releaseTexImage
https://bugs.webkit.org/show_bug.cgi?id=210151
Patch by Kenneth Russell <kbr@chromium.org> on 2020-04-08
Reviewed by Dean Jackson.
Explicitly check for context teardown when displaying a
WebGLLayer.
- platform/graphics/cocoa/WebGLLayer.mm:
(-[WebGLLayer display]):
- 11:50 AM Changeset in webkit [259736] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, update TestExpectations after r259712
https://bugs.webkit.org/show_bug.cgi?id=210204
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 11:47 AM Changeset in webkit [259735] by
-
- 2 edits in trunk/LayoutTests
REGRESSION: [ iOS wk2 Debug ] WTFCrash + 14 (Assertions.cpp:309) - WebCore::Page::recomputeTextAutoSizingInAllFrames()
https://bugs.webkit.org/show_bug.cgi?id=210205
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 11:23 AM Changeset in webkit [259734] by
-
- 7 edits2 adds in trunk/Source
Enable offlineasm debug annotations for GCC
https://bugs.webkit.org/show_bug.cgi?id=207119
Patch by Angelos Oikonomopoulos <Angelos Oikonomopoulos> on 2020-04-08
Reviewed by Darin Adler.
This simply reuses the existing code that generates debug
annotations, adding two workarounds for limitations in GCC and
GDB.
First, the .file directives that offlineasm inserts in inline asm
use file slots that conflict with those in the compilation unit
that includes LLIntAssembly.h (specifically,
LowLevelInterpreter.cpp). Clang's built-in assembler will
transparently fix that for us, but for GCC we need to
post-process the generated assembler.
Unfortunately, cmake doesn't allow us to introduce a compiler wrapper for a
single source file, so we need to create a separate target for it. This
wrapping only happens when building with GCC and the user has explicitly
requested debug information, either by selecting a Debug/RelWithDebInfo build
or setting GCC_OFFLINEASM_SOURCE_MAP.
Second, GDB will only look at the line table for a compilation unit if
it can first resolve the address to one of the known symbols in the
file. Introduce marker symbols to work around this bug.
- CMakeLists.txt:
- 11:18 AM Changeset in webkit [259733] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 Debug ] WTFCrash + 14 (Assertions.cpp:309) - WebKit::EditorState::postLayoutData()
https://bugs.webkit.org/show_bug.cgi?id=210201
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 11:15 AM Changeset in webkit [259732] by
-
- 2 edits in trunk/Source/WebCore
[macOS] Make PlatformPasteboard robust against types that cannot be encoded with +defaultCStringEncoding
https://bugs.webkit.org/show_bug.cgi?id=210195
<rdar://problem/61084208>
Reviewed by Tim Horton.
When setting pasteboard data using the three PlatformPasteboard methods below, avoid calling into NSPasteboard
in the case where the pasteboard type fails to be encoded using +[NSString defaultCStringEncoding]. This is
because AppKit pasteboard logic will attempt to convert the given string into a C string using [NSString
defaultCStringEncoding], and then assume that the result is non-null, if the type is neither declared nor
dynamic.
- platform/mac/PlatformPasteboardMac.mm:
(WebCore::canWritePasteboardType):
(WebCore::PlatformPasteboard::setTypes):
(WebCore::PlatformPasteboard::setBufferForType):
(WebCore::PlatformPasteboard::setStringForType):
Add early returns if canWritePasteboardType returns false.
- 11:07 AM Changeset in webkit [259731] by
-
- 8 edits in trunk
Return app-bound sessions for instances where WKAppBoundDomains is
empty
https://bugs.webkit.org/show_bug.cgi?id=210124
<rdar://problem/61276630>
Reviewed by Brent Fulgham.
Source/WebKit:
No new tests. Behavior confirmed by existing In-App Browser Privacy
tests.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::sessionWrapperForTask):
Remove the flag checking if In-App Browser Privacy is enabled. We
should return an app-bound session if WKAppBoundDomains is empty so
we no longer need to check the flag here.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
- UIProcess/WebPageProxy.h:
As described above, we no longer need to check the flag in this
instance as we are determining behavior based on the WKAppBoundDomains
list. Also moved the logic for checking an empty list to setIsNavigatingToAppBoundDomain,
so it should take an Optional (WTF::nullopt indicates an empty list).
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::initializeAppBoundDomains):
Use the flag to enable internal debugging for testing purposes.
- UIProcess/API/APIHTTPCookieStore.cpp:
(API::HTTPCookieStore::filterAppBoundCookies):
Flag no longer needed. This should be gated by whether the domains
list is empty or not.
Tools:
Clean up test settings between tests.
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
(cleanUpInAppBrowserPrivacyTestSettings):
- 10:58 AM Changeset in webkit [259730] by
-
- 5 edits in trunk/LayoutTests
[Win] Gardening, update baselines
Unreviewed gardening.
Rebaseline after r259296.
- platform/win/css2.1/20110323/margin-applies-to-006-expected.txt:
- platform/win/fast/forms/form-hides-table-expected.txt:
- platform/win/fast/table/table-insert-before-non-anonymous-block-expected.txt:
- platform/win/tables/mozilla_expected_failures/dom/appendCol1-expected.txt:
- 10:51 AM Changeset in webkit [259729] by
-
- 4 edits in trunk/Source/WebKit
[iOS] WebPageProxy::didCommitLoadForFrame should not crash with null or empty
mimeType
parameter
<https://webkit.org/b/209994>
<rdar://problem/60068700>
Reviewed by Chris Dumez.
- UIProcess/API/ios/WKWebViewIOS.mm:
(-[WKWebView _setHasCustomContentView:loadedMIMEType:]):
- Extract logic for
representationClass
since -[WKWebViewContentProviderRegistry providerForMIMEType:] may return nil. - UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm:
(-[WKWebViewContentProviderRegistry providerForMIMEType:]):
- Add early return if
mimeType
is null or empty as those are not valid keys for_contentProviderForMIMEType
. - UIProcess/mac/PageClientImplMac.mm:
(WebKit::PageClientImpl::didCommitLoadForMainFrame):
- Add UNUSED_PARAM() for when -Wno-unused-parameter is removed in place of GCC_WARN_UNUSED_VARIABLE=YES.
- 10:41 AM Changeset in webkit [259728] by
-
- 2 edits in trunk/LayoutTests
[ Mac wk1 Debug ] two webgl/2.0.0/conformance2/attribs/gl tests are flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=210198
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 10:30 AM Changeset in webkit [259727] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r253346): some Automation commands targeted at an iframe do not return
https://bugs.webkit.org/show_bug.cgi?id=210139
<rdar://problem/60561009>
Reviewed by Devin Rousso.
WebAutomationSession / WebAutomationSessionProxy are singletons, and only one
exists at a time in the UIProcess / WebProcess respectively. A recent change was
made to call Connection::sendWithAsyncReply from the WebPageProxy object rather
than WebProcess. The effect of this is that the WebPage's destinationID is
used for the response message rather than the WebProcess.
Because WebAutomationSessionProxy registers itself as a global IPC message receiver,
the page-targeted destinationID cannot find any receivers for the message at the
destinationID, which causes an ASSERT in debug builds and a hang in non-debug builds.
The fix is to continue sending messages via the WebProcess object, whose messages
are tagged with a destinationID of 0 (eg, global message receiver). This could alternatively
be accomplished by passing a destinationID of 0 to every sendWithAsyncReply, but
as is this change is a straightforward partial revert of r253346.
- UIProcess/Automation/WebAutomationSession.cpp:
(WebKit::WebAutomationSession::switchToBrowsingContext):
(WebKit::WebAutomationSession::evaluateJavaScriptFunction):
(WebKit::WebAutomationSession::resolveChildFrameHandle):
(WebKit::WebAutomationSession::resolveParentFrameHandle):
(WebKit::WebAutomationSession::computeElementLayout):
(WebKit::WebAutomationSession::selectOptionElement):
(WebKit::WebAutomationSession::setFilesForInputFileUpload):
(WebKit::WebAutomationSession::getAllCookies):
(WebKit::WebAutomationSession::deleteSingleCookie):
(WebKit::WebAutomationSession::takeScreenshot):
- 10:25 AM Changeset in webkit [259726] by
-
- 25 edits in trunk
Unreviewed, reverting r259708.
Broke the iOS device Build
Reverted changeset:
"Enable the use of XCBuild by default in Apple builds"
https://bugs.webkit.org/show_bug.cgi?id=209890
https://trac.webkit.org/changeset/259708
- 10:21 AM Changeset in webkit [259725] by
-
- 5 edits in trunk
Import fetch/origin/assorted.window.js
https://bugs.webkit.org/show_bug.cgi?id=210128
Patch by Rob Buis <rbuis@igalia.com> on 2020-04-08
Reviewed by Youenn Fablet.
LayoutTests/imported/w3c:
Import fetch/origin/assorted.window.js after
https://github.com/web-platform-tests/wpt/pull/22567.
- web-platform-tests/fetch/origin/assorted.window-expected.txt:
- web-platform-tests/fetch/origin/assorted.window.js:
(async const):
(fetchReferrerPolicy):
(referrerPolicyTestString):
Source/WebCore:
Import fetch/origin/assorted.window.js and remove
the hack to make the previous (incorrect) version work.
- loader/cache/CachedResourceRequest.cpp:
(WebCore::CachedResourceRequest::updateReferrerAndOriginHeaders):
- 10:14 AM Changeset in webkit [259724] by
-
- 2 edits in trunk/Source/WebKit
Ref WebProcessProxy in NetworkProcessProxy::terminateUnresponsiveServiceWorkerProcesses()
https://bugs.webkit.org/show_bug.cgi?id=210196
Reviewed by Youenn Fablet.
Ref WebProcessProxy in NetworkProcessProxy::terminateUnresponsiveServiceWorkerProcesses()
since the call to WebProcessProxy::disableServiceWorkers() may cause it to get destroyed
otherwise.
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::terminateUnresponsiveServiceWorkerProcesses):
- 10:07 AM Changeset in webkit [259723] by
-
- 3 edits in trunk/LayoutTests
Flaky Test: media/modern-media-controls/tracks-support/tracks-support-show-panel-fullscreen.html
https://bugs.webkit.org/show_bug.cgi?id=182571
Updated expectations to include wk2
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 10:00 AM Changeset in webkit [259722] by
-
- 10 edits4 adds in trunk
Hit test with clipPath referencing parent element causes infinite recursion
https://bugs.webkit.org/show_bug.cgi?id=209773
<rdar://problem/60002347>
Reviewed by Geoffrey Garen.
Source/WebCore:
Upon further investigation, the original fix for the hit test in RenderSVGResourceClipper to prevent
infinite recursion was incomplete, as something such as a use element could easily cause another cycle which
would not be detected by the initial fix. Instead, by maintaining a set of visited elements, we can prevent
visiting the same element twice, and thus breaking any cycles which might occur in the SVG document. We
track these elements within the SVGHitTestCycleDetectionScope class, where the set of visited elements are
maintained statically, and instances of the class will manage the scope, as an RAII-style object.
This is covered by an existing test, but includes additional test cases which illustrate the more complex
document structure.
Tests: svg/hittest/svg-clip-path-child-element-with-use-root.html
svg/hittest/svg-clip-path-child-element-with-use.html
- rendering/svg/RenderSVGContainer.cpp:
(WebCore::RenderSVGContainer::nodeAtFloatPoint):
- rendering/svg/RenderSVGImage.cpp:
(WebCore::RenderSVGImage::nodeAtFloatPoint):
- rendering/svg/RenderSVGResourceClipper.cpp:
(WebCore::RenderSVGResourceClipper::hitTestClipContent):
- rendering/svg/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::nodeAtPoint):
- rendering/svg/RenderSVGShape.cpp:
(WebCore::RenderSVGShape::nodeAtFloatPoint):
- rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::nodeAtFloatPoint):
- rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::pointInClippingArea):
(WebCore::SVGHitTestCycleDetectionScope::SVGHitTestCycleDetectionScope):
(WebCore::SVGHitTestCycleDetectionScope::~SVGHitTestCycleDetectionScope):
(WebCore::SVGHitTestCycleDetectionScope::visitedElements):
(WebCore::SVGHitTestCycleDetectionScope::isEmpty):
(WebCore::SVGHitTestCycleDetectionScope::isVisiting):
- rendering/svg/SVGRenderSupport.h:
LayoutTests:
- svg/hittest/svg-clip-path-child-element-with-use-expected.txt: Added.
- svg/hittest/svg-clip-path-child-element-with-use-root-expected.txt: Added.
- svg/hittest/svg-clip-path-child-element-with-use-root.html: Added.
- svg/hittest/svg-clip-path-child-element-with-use.html: Added.
- 10:00 AM Changeset in webkit [259721] by
-
- 2 edits in trunk/Tools
[lldb-webkit] Pretty-print NSEventModifierFlags
https://bugs.webkit.org/show_bug.cgi?id=210193
Reviewed by Jer Noble.
Enumerations such as NSEventModifierFlags describe disjoint sets of flags. In the case of
NSEventModifierFlags it describes both device independent and dependent flags. When pretty
printing such types one or more sets of flags may not be publically available. So, add
support masking off such inaccessible sets of flags before pretty printing the rest of
the set.
- lldb/lldb_webkit.py:
(addSummaryAndSyntheticFormattersForRawBitmaskType):
(addSummaryAndSyntheticFormattersForRawBitmaskType.GeneratedRawBitmaskProvider):
(lldb_init_module):
(RawBitmaskProviderBase):
(RawBitmaskProviderBase._bitmask):
- 9:31 AM Changeset in webkit [259720] by
-
- 14 edits2 adds in trunk
transition-property is not computed correctly when transition-duration is set to "inherit"
https://bugs.webkit.org/show_bug.cgi?id=204554
<rdar://problem/57458091>
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Somehow this test progressed slightly, it now fails in the second assertion rather than the first, although it fails still overall.
- web-platform-tests/css/css-transitions/events-004-expected.txt:
Source/WebCore:
Test: transitions/transition-property-for-element-with-transition-duration-inherit.html
The "transition-property" would behave as if "inherit" was set when the "transition-duration" property itself was set explicitly to "inherit".
We fix this by storing all the information contained in the "transition-property" into the single Animation::m_property member instead of splitting
it across Animation::m_mode as well. We now use a TransitionProperty struct which holds both the transition "mode" (none, all, single property,
unknown property) and and the CSS property targeted itself.
This requires modifying call sites of both Animation::property() and Animation::animationMode() throughout WebCore.
- animation/AnimationTimeline.cpp:
(WebCore::transitionMatchesProperty):
(WebCore::compileTransitionPropertiesInStyle):
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::createTransitionPropertyValue):
- css/CSSToStyleMap.cpp:
(WebCore::CSSToStyleMap::mapAnimationProperty):
- css/makeprop.pl:
(generateAnimationPropertyInitialValueSetter):
(generateAnimationPropertyInheritValueSetter):
- page/animation/CompositeAnimation.cpp:
(WebCore::CompositeAnimation::updateTransitions):
- page/animation/ImplicitAnimation.cpp:
(WebCore::ImplicitAnimation::ImplicitAnimation):
- page/ios/ContentChangeObserver.cpp:
(WebCore::ContentChangeObserver::didAddTransition):
- platform/animation/Animation.cpp:
(WebCore::Animation::Animation):
(WebCore::Animation::operator=):
(WebCore::Animation::animationsMatch const):
(WebCore::operator<<):
- platform/animation/Animation.h:
(WebCore::Animation::property const):
(WebCore::Animation::timingFunction const):
(WebCore::Animation::setProperty):
(WebCore::Animation::setTimingFunction):
(WebCore::Animation::initialProperty):
(WebCore::Animation::animationMode const): Deleted.
(WebCore::Animation::setAnimationMode): Deleted.
- rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::adjustTransitions):
(WebCore::RenderStyle::transitionForProperty const):
LayoutTests:
Add a new test that checks that setting "transition-duration" to "inherit" does not cause "transition-property" to behaves
as if "inherit" was implictly set as well.
- transitions/transition-property-for-element-with-transition-duration-inherit-expected.txt: Added.
- transitions/transition-property-for-element-with-transition-duration-inherit.html: Added.
- 9:17 AM Changeset in webkit [259719] by
-
- 3 edits in trunk/Tools
[ews] Improve summary for CheckPatchRelevance build step (follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=210146
Unreviewed follow-up fix.
Revert the failure message for CheckPatchRelevance to old one since it needs to match with status-bubble code.
- BuildSlaveSupport/ews-build/steps.py:
- BuildSlaveSupport/ews-build/steps_unittest.py:
(TestCheckPatchRelevance.test_non_relevant_patch):
- 8:41 AM Changeset in webkit [259718] by
-
- 5 edits in trunk/Tools
EWS should skip mac-wk1 and mac-debug-wk1 tests for patches that only change WebKit2 sources
https://bugs.webkit.org/show_bug.cgi?id=210115
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/factories.py:
(macOSWK1Factory.init): Set checkRelevance to True for mac wk1 queue.
- BuildSlaveSupport/ews-build/steps.py:
(CheckPatchRelevance): Added relevance info for wk1 queues.
- BuildSlaveSupport/ews-build/factories_unittest.py: Updated unit-tests.
(TestLayoutTestsFactory.test_macos_wk1_release_factory):
(TestLayoutTestsFactory.test_macos_wk1_debug_factory):
- BuildSlaveSupport/ews-build/steps_unittest.py:
(TestCheckPatchRelevance.test_relevant_jsc_patch):
(TestCheckPatchRelevance.test_relevant_wk1_patch):
(TestCheckPatchRelevance.test_queues_without_relevance_info):
(TestCheckPatchRelevance.test_non_relevant_patch):
- 8:37 AM Changeset in webkit [259717] by
-
- 2 edits in trunk/Source/WebKit
Regression(r259610) [RBSTarget targetWithPid:] may throw a 'must specify a valid pid' exception
https://bugs.webkit.org/show_bug.cgi?id=210159
Reviewed by Alex Christensen.
[RBSTarget targetWithPid:] may throw a 'must specify a valid pid' exception since r259610. There
are apparently cases where the PID we are passing the ProcessAssertion is 0 (likely process crash
on startup). BKSAssertion used to deal with this silently but RBSAssertion actually throws an
exception in this case. To maintain the old behavior, we should do an explicit check to make sure
the PID is valid before passing it to RunningBoard.
- UIProcess/ios/ProcessAssertionIOS.mm:
(WebKit::ProcessAssertion::ProcessAssertion):
- 8:03 AM Changeset in webkit [259716] by
-
- 2 edits in trunk/Source/WebCore
Handle errors when grabbing grabbing microphone audio samples from the AudioUnit
https://bugs.webkit.org/show_bug.cgi?id=210185
Reviewed by Eric Carlson.
We compute the buffer size to copy microphone samples when setting up the Audio Unit.
This is based on the preferred buffer size and sample rate.
But these values might change over time by the web page durig the capture.
If the preferred buffer size increases (for instance if the page stops using WebAudio), our buffer might be too small.
Capture will fail but we will not notify the web application.
Update the code to reconfigure the AudioUnit if AudioUnitRender returns an error of type kAudio_ParamError.
Update the code to only increment the number of microphoneProcsCalled if AudioUnitRender succeeds.
This will ensure that, should AudioUnitRender fails for some time, the timer will kick in and fail the capture.
Page will be notified and can call getUserMedia again to restart capture.
- platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioSharedUnit::processMicrophoneSamples):
- 7:32 AM Changeset in webkit [259715] by
-
- 4 edits in trunk/Source/JavaScriptCore
[JSC][32-bits] Build failure after r259676 (Not using strict mode within ClassDeclaration statement)
https://bugs.webkit.org/show_bug.cgi?id=210176
Reviewed by Aakash Jain.
Fixed 32-bit paths to match changes in r259676.
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compileContiguousPutByVal):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileDeleteById):
(JSC::DFG::SpeculativeJIT::compileDeleteByVal):
- jit/JITCall32_64.cpp:
(JSC::JIT::compileCallEval):
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_del_by_id):
(JSC::JIT::emit_op_del_by_val):
(JSC::JIT::emitPutByValWithCachedId):
(JSC::JIT::emitSlow_op_put_by_val):
(JSC::JIT::emit_op_put_by_id):
- 7:20 AM Changeset in webkit [259714] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, flaky failures in EWS GTK-WK2
https://bugs.webkit.org/show_bug.cgi?id=210187
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 5:25 AM Changeset in webkit [259713] by
-
- 6 edits in trunk
[GTK] Drop usage of deprecated GdkDeviceManager
https://bugs.webkit.org/show_bug.cgi?id=210179
Reviewed by Adrian Perez de Castro.
Replace GdkDeviceManager usage for GdkSeat.
For GTK4 further changes will be needed but this is a
start.
Source/WebKit:
- UIProcess/gtk/ViewGestureControllerGtk.cpp:
(WebKit::createScrollEvent):
Tools:
- TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp:
(WebViewTest::mouseMoveTo):
(WebViewTest::keyStroke):
(WebViewTest::doMouseButtonEvent):
- TestWebKitAPI/gtk/PlatformWebViewGtk.cpp:
(TestWebKitAPI::doKeyStroke):
(TestWebKitAPI::doMouseButtonEvent):
(TestWebKitAPI::PlatformWebView::simulateMouseMove):
- WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
(WTR::EventSenderProxy::createMouseButtonEvent):
(WTR::EventSenderProxy::keyDown):
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::continuousMouseScrollBy):
(WTR::EventSenderProxy::createTouchEvent):
- 3:29 AM Changeset in webkit [259712] by
-
- 2 edits in trunk/Source/WebKit
Ensure base cache path exists before calculating disk cache capacity
https://bugs.webkit.org/show_bug.cgi?id=209338
Reviewed by Adrian Perez de Castro.
The base cache path might not exist yet in Cache::open() since it's Storage::open() the one calling
FileSystem::makeAllDirectories() with the final cache directory. In such case, computeCapacity() fails because
FileSystem::getVolumeFreeSpace() needs an existing file.
- NetworkProcess/cache/NetworkCache.cpp:
(WebKit::NetworkCache::Cache::open):
- 2:38 AM Changeset in webkit [259711] by
-
- 8 edits in trunk/Source
Rearrange and simplify some JSC feature flags
https://bugs.webkit.org/show_bug.cgi?id=210152
Reviewed by Saam Barati.
Source/JavaScriptCore:
- inspector/remote/cocoa/RemoteConnectionToTargetCocoa.mm:
(Inspector::RemoteConnectionToTarget::dispatchAsyncOnTarget):
- jit/ExecutableAllocator.cpp:
(JSC::isJITEnabled):
(JSC::ExecutableAllocator::setJITEnabled):
- runtime/Options.cpp:
(JSC::overrideDefaults):
Source/WTF:
- wtf/PlatformEnableCocoa.h:
- wtf/PlatformHave.h:
- wtf/PlatformUse.h:
- 2:28 AM Changeset in webkit [259710] by
-
- 2 edits in trunk/LayoutTests
Unreviewed GTK gardening. Update expectations after r259705
Remove expectations of tests that are passing after r259705.
- platform/gtk/TestExpectations:
- 2:24 AM Changeset in webkit [259709] by
-
- 2 edits in trunk/LayoutTests
Unreviewed GTK gardening. Update expectations after r259705
Remove expectations of tests that are passing after r259705.
- platform/gtk/TestExpectations:
- 2:12 AM Changeset in webkit [259708] by
-
- 25 edits in trunk
Enable the use of XCBuild by default in Apple builds
https://bugs.webkit.org/show_bug.cgi?id=209890
<rdar://problem/44182078>
Reviewed by Darin Adler.
Switch from the "legacy" Xcode build system to the "new" build system
(also known as "XCBuild"). Switching to the new system speeds up
builds by a small percentage, better validates projects for
build-related issues (such as dependency cycles), lets WebKit benefit
from future improvements in XCBuild such as those coming from the
underlying llbuild open source project, and prepares us for any other
tools built for this new ecosystem.
Specific changes:
- Remove Xcode project and workspace settings that selected the Build system, allowing the default to take hold (which is currently the New build system).
- Updated webkitdirs.pm with a terser check for Xcode version.
- Update build-webkit and Makefile.shared to be explicit when using the old build system (no longer treat it as a default or fall-back configuration).
- Update various xcconfig files similarly to treat the default as using the new build system.
- Update various post-processing build steps to check for Xcode 11.4 and to no longer treat the default as using the old build system.
.:
- Makefile.shared:
- WebKit.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
Source/JavaScriptCore:
- Configurations/JavaScriptCore.xcconfig:
- JavaScriptCore.xcodeproj/project.pbxproj:
Source/ThirdParty/ANGLE:
- ANGLE.xcodeproj/project.pbxproj:
- Configurations/ANGLE.xcconfig:
Source/ThirdParty/libwebrtc:
- libwebrtc.xcodeproj/project.pbxproj:
Source/WebCore:
No new tests -- no changed functionality.
- WebCore.xcodeproj/project.pbxproj:
Source/WebKit:
- Configurations/WebKit.xcconfig:
- WebKit.xcodeproj/project.pbxproj:
Source/WebKitLegacy:
- WebKitLegacy.xcodeproj/project.pbxproj:
Source/WebKitLegacy/mac:
- Configurations/WebKitLegacy.xcconfig:
Tools:
- DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
- Scripts/build-webkit:
- Scripts/webkitdirs.pm:
(canUseXCBuild):
- WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
- 1:40 AM Changeset in webkit [259707] by
-
- 8 edits in trunk
[GTK][WPE] Release logs are unconditionally filling the journal
https://bugs.webkit.org/show_bug.cgi?id=209421
Reviewed by Carlos Alberto Lopez Perez.
.:
Re-enable Systemd logging and make it opt-in via the WEBKIT_DEBUG environment variable.
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake:
Source/WebCore:
- platform/unix/LoggingUnix.cpp:
(WebCore::logLevelString): Disable all logging when the
WEBKIT_DEBUG environment variable is empty.
Source/WTF:
- wtf/Assertions.h: Don't send logs to systemd for disabled log channels.
- wtf/Logger.h:
(WTF::Logger::willLog const): Ditto.
- 12:46 AM Changeset in webkit [259706] by
-
- 3 edits in trunk/Source/WebCore
[iPadOS] Unable to toggle subpages on sites.google.com
https://bugs.webkit.org/show_bug.cgi?id=210143
<rdar://problem/58653069>
Reviewed by Brent Fulgham.
If a site built with sites.google.com has some sub-pages, tapping on the right-pointing arrow will not disclose the sub-pages due to preventDefault() being called
on the touchend event handler. We work around this issue by adding a new quirk that will prevent a given touch event type from being dispatched on a given element.
This quirk is only true for sites.google.com and the right-pointing arrow for the sub-pages disclosure.
- page/Quirks.cpp:
(WebCore::Quirks::shouldPreventDispatchOfTouchEvent const):
- page/Quirks.h:
Apr 7, 2020:
- 11:19 PM Changeset in webkit [259705] by
-
- 5 edits in trunk
[GTK][WPE] WTR: fix handling of WebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=210106
Reviewed by Adrian Perez de Castro.
Source/WebKit:
Add WKContextSetPrimaryWebsiteDataStore() to expose WebProcessPool::setPrimaryDataStore().
- UIProcess/API/C/WKContext.cpp:
(WKContextSetPrimaryWebsiteDataStore):
- UIProcess/API/C/WKContextPrivate.h:
Tools:
The TestController::defaultWebsiteDataStore() is created and used but never really assigned to the
context. Since we are not assigning a WebsiteDataStore to the context, and we don't use the default
WebsiteDataStore, when a new page is created, we end up creating the default one (with the default config,
instead of the one created by WTR).
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::platformAdjustContext): Set defaultWebsiteDataStore() as the primary data store of the
context like the GLib API does.
- 10:46 PM Changeset in webkit [259704] by
-
- 3 edits in trunk/Tools
[Clang 10] Fix -Wimplicit-int-float-conversion compilation warnings in TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=210067
Reviewed by Darin Adler.
There are test cases for overflow, non-overflow, underflow and
non-underflow edge cases in WTF.clampToIntegerFloat test.
maxPlusOne<int> can be used for overflow edge case, INT_MIN for
non-underflow. This change added code to calculate values for
non-overflow and underflow cases.
- TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI::TEST(WTF.clampToIntegerFloat)):
- TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
(TestWebKitAPI::TEST(FloatRect.EnclosingIntRect)): Replaced
shiftMaxXEdgeTo(INT_MAX) with shiftMaxXEdgeTo(0) because it also
causes overflow for enclosingIntRect.
- 9:45 PM Changeset in webkit [259703] by
-
- 27 edits in trunk
[css-values-4] Support font-relative lh and rlh unit
https://bugs.webkit.org/show_bug.cgi?id=195180
Patch by Tyler Wilcock <Tyler Wilcock> on 2020-04-07
Reviewed by Antti Koivisto.
LayoutTests/imported/w3c:
Pass all 'lh' and 'rlh' tests, minus the '2rlh in font-size on root' test which may be a bug in the test itself: https://github.com/web-platform-tests/wpt/issues/22055
- web-platform-tests/css/css-values/lh-rlh-on-root-001-expected.txt:
Source/WebCore:
Implement support for 'lh' and 'rlh' units.
https://www.w3.org/TR/css-values-4/#font-relative-lengths
- css/CSSCalculationValue.cpp:
(WebCore::calcUnitCategory):
(WebCore::calculationCategoryForCombination):
(WebCore::hasDoubleValue):
- css/CSSGradientValue.cpp:
(WebCore::CSSLinearGradientValue::createGradient):
(WebCore::CSSRadialGradientValue::createGradient):
(WebCore::CSSConicGradientValue::createGradient):
- css/CSSPrimitiveValue.cpp:
(WebCore::isValidCSSUnitTypeForDoubleConversion):
(WebCore::isStringType):
(WebCore::CSSPrimitiveValue::cleanup):
(WebCore::CSSPrimitiveValue::computeNonCalcLengthDouble):
(WebCore::CSSPrimitiveValue::unitTypeString):
(WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText const):
(WebCore::CSSPrimitiveValue::equals const):
(WebCore::CSSPrimitiveValue::collectDirectComputationalDependencies const):
(WebCore::CSSPrimitiveValue::collectDirectRootComputationalDependencies const):
- css/CSSPrimitiveValue.h:
(WebCore::CSSPrimitiveValue::isFontRelativeLength):
(WebCore::CSSPrimitiveValue::isLength):
- css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::convertingToLengthRequiresNonNullStyle const):
- css/CSSToLengthConversionData.cpp:
(WebCore::CSSToLengthConversionData::viewportWidthFactor const):
(WebCore::CSSToLengthConversionData::viewportHeightFactor const):
(WebCore::CSSToLengthConversionData::viewportMinFactor const):
(WebCore::CSSToLengthConversionData::viewportMaxFactor const):
- css/CSSToLengthConversionData.h: Replace bool 'm_computingFontSize' with Optional<CSSPropertyID> that indicates the property being computed, where none means the property being computed is unknown or unimportant to know.
(WebCore::CSSToLengthConversionData::CSSToLengthConversionData): Add 'parentStyle' parameter, necessary for calculating lh/rlh unit values.
(WebCore::CSSToLengthConversionData::parentStyle const):
(WebCore::CSSToLengthConversionData::computingFontSize const):
(WebCore::CSSToLengthConversionData::computingLineHeight const):
(WebCore::CSSToLengthConversionData::copyWithAdjustedZoom const):
(WebCore::CSSToLengthConversionData::copyWithAdjustedZoomAndPropertyToCompute const):
- css/CSSUnits.cpp:
(WebCore::operator<<):
- css/CSSUnits.h:
- css/MediaQueryEvaluator.cpp:
(WebCore::MediaQueryEvaluator::evaluate const):
- css/parser/CSSParserToken.cpp:
(WebCore::cssPrimitiveValueUnitFromTrie):
- css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeLength):
- css/parser/SizesAttributeParser.cpp:
(WebCore::SizesAttributeParser::computeLength):
(WebCore::SizesAttributeParser::effectiveSizeDefaultValue):
- html/shadow/TextControlInnerElements.cpp:
(WebCore::TextControlInnerElement::resolveCustomStyle):
- rendering/RenderElement.h:
(WebCore::RenderElement::parentStyle const):
- rendering/RenderThemeIOS.mm:
(WebCore::applyCommonButtonPaddingToStyle):
(WebCore::RenderThemeIOS::adjustButtonStyle const):
- rendering/style/RenderStyle.cpp: Extract 'computedLineHeight' behavior into separate 'computeLineHeight' function so logic can be reused elsewhere.
(WebCore::RenderStyle::computedLineHeight const):
(WebCore::RenderStyle::computeLineHeight const):
- rendering/style/RenderStyle.h:
- style/StyleBuilderConverter.h: Extract zoom calculation logic out of 'csstoLengthConversionDataWithTextZoomFactor' into separate 'zoomWithTextZoomFactor' function so logic can be reused elsewhere.
(WebCore::Style::zoomWithTextZoomFactor):
(WebCore::Style::BuilderConverter::csstoLengthConversionDataWithTextZoomFactor):
(WebCore::Style::BuilderConverter::convertLineHeight):
- style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyValueFontSize):
- style/StyleBuilderState.cpp:
(WebCore::Style::BuilderState::BuilderState):
LayoutTests:
Implement support for the font-relative 'lh' and 'rlh' units.
https://www.w3.org/TR/css-values-4/#font-relative-lengths
- 8:59 PM Changeset in webkit [259702] by
-
- 2 edits in trunk/LayoutTests
[iOS] webrtc/h265.html is consistently timing out
https://bugs.webkit.org/show_bug.cgi?id=210173
Unreviewed test gardening.
- platform/ios/TestExpectations: Skip the test on iOS.
- 8:36 PM Changeset in webkit [259701] by
-
- 3 edits2 adds in trunk
fastclick.com: A Gradient banner is missing
https://bugs.webkit.org/show_bug.cgi?id=210169
<rdar://problem/60680979>
Reviewed by Simon Fraser.
Source/WebCore:
This patch ensures that if the non-fixed specified size for the background content computes to be a close-to-zero value, we produce at least one device pixel size content.
(and this is similar to what we do for FillSizeType::Contain/Cover.)
Test: fast/backgrounds/generated-bck-image-with-small-relative-size.html
- rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::calculateFillTileSize const):
LayoutTests:
- fast/backgrounds/generated-bck-image-with-small-relative-size-expected.html: Added.
- fast/backgrounds/generated-bck-image-with-small-relative-size.html: Added.
- 7:38 PM Changeset in webkit [259700] by
-
- 10 edits in trunk
[iOS] Deny mach lookup access to the runningboard service in the WebContent process
https://bugs.webkit.org/show_bug.cgi?id=209933
Reviewed by Chris Dumez.
Source/WebKit:
Creating the dependency process assertion in the WebContent process requires access to runningboard, but since
this is only done on process startup, we can issue a temporary extension to the runningboard service, which
will be immediately revoked after the process assertion has been created.
Test: fast/sandbox/ios/sandbox-mach-lookup.html
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):
- Shared/WebProcessCreationParameters.h:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeConnection):
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):
LayoutTests:
- fast/sandbox/ios/sandbox-mach-lookup-expected.txt:
- fast/sandbox/ios/sandbox-mach-lookup.html:
- 6:38 PM Changeset in webkit [259699] by
-
- 2 edits in trunk/Tools
[ews] Add unit tests for layout tests factories
https://bugs.webkit.org/show_bug.cgi?id=210150
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/factories_unittest.py:
(TestLayoutTestsFactory):
(TestLayoutTestsFactory.test_macos_wk1_release_factory): Added unit-test.
(TestLayoutTestsFactory.test_macos_wk1_debug_factory): Ditto.
(TestLayoutTestsFactory.test_macos_wk2_factory): Ditto.
(TestLayoutTestsFactory.test_ios_wk2_factory): Ditto.
(TestGTKFactory): Renamed.
- 5:59 PM Changeset in webkit [259698] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. remove the build warning below since r243033.
warning: unused parameter ‘pageMuted’ [-Wunused-parameter]
No new tests, no new behaviors.
- platform/mediastream/RealtimeMediaSource.cpp:
(WebCore::RealtimeMediaSource::setInterrupted):
- 5:43 PM Changeset in webkit [259697] by
-
- 8 edits in branches/safari-610.1.9-branch
Cherry-pick r259655. rdar://problem/61360282
Return app-bound sessions for instances where WKAppBoundDomains is
empty
https://bugs.webkit.org/show_bug.cgi?id=210124
<rdar://problem/61276630>
Reviewed by Brent Fulgham.
Source/WebKit:
No new tests. Behavior confirmed by existing In-App Browser Privacy
tests.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::sessionWrapperForTask): Remove the flag checking if In-App Browser Privacy is enabled. We should return an app-bound session if WKAppBoundDomains is empty so we no longer need to check the flag here.
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain): (WebKit::WebPageProxy::decidePolicyForNavigationAction):
- UIProcess/WebPageProxy.h: As described above, we no longer need to check the flag in this instance as we are determining behavior based on the WKAppBoundDomains list. Also moved the logic for checking an empty list to setIsNavigatingToAppBoundDomain, so it should take an Optional (WTF::nullopt indicates an empty list).
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::initializeAppBoundDomains): Use the flag to enable internal debugging for testing purposes.
- UIProcess/API/APIHTTPCookieStore.cpp: (API::HTTPCookieStore::filterAppBoundCookies): Flag no longer needed. This should be gated by whether the domains list is empty or not.
Tools:
Cleaned up tests to turn the flag on at the start of each In-App
Browser Privacy test.
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm: (cleanUpInAppBrowserPrivacyTestSettings): (initializeInAppBrowserPrivacyTestSettings): (TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259655 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:43 PM Changeset in webkit [259696] by
-
- 4 edits in branches/safari-610.1.9-branch
Cherry-pick r259650. rdar://problem/61419505
WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
https://bugs.webkit.org/show_bug.cgi?id=210131
rdar://problem/61368446
Reviewed by Brady Eidson.
Source/WebCore:
If Page::notifyToInjectUserScripts() is called early, before Frame::injectUserScripts() happens,
m_hasBeenNotifiedToInjectUserScripts will be false, allowing scripts to build up in m_userScriptsAwaitingNotification
and never being injected (since Page::notifyToInjectUserScripts() will not be called again).
- page/Page.cpp: (WebCore::Page::notifyToInjectUserScripts): Set m_hasBeenNotifiedToInjectUserScripts to true when called.
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm: (TEST):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:43 PM Changeset in webkit [259695] by
-
- 7 edits in branches/safari-610.1.9-branch/Source/WebKit
Cherry-pick r259615. rdar://problem/61360282
Create a way to signal if the WKAppBoundDomains list is empty
https://bugs.webkit.org/show_bug.cgi?id=210074
<rdar://problem/61359228>
Reviewed by Brent Fulgham.
Updates the WebFramePolicyListener to return an Optional<NavigatingToAppBoundDomain>
to signal if the WKAppBoundDomains list is empty. If so, we don't want to update
any app-bound domain parameters in WebPageProxy.
- UIProcess/WebFramePolicyListenerProxy.cpp: (WebKit::WebFramePolicyListenerProxy::didReceiveAppBoundDomainResult):
- UIProcess/WebFramePolicyListenerProxy.h:
- UIProcess/WebFrameProxy.cpp: (WebKit::WebFrameProxy::setUpPolicyListenerProxy):
- UIProcess/WebFrameProxy.h:
- UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::decidePolicyForNavigationAction): (WebKit::WebPageProxy::decidePolicyForNewWindowAction): (WebKit::WebPageProxy::decidePolicyForResponseShared):
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm: (WebKit::WebsiteDataStore::beginAppBoundDomainCheck): Changed the WebFramePolicyListener to take a NavigatingToAppBoundDomain type as opposed to a boolean to allow it to handle the empty value.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259615 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:38 PM Changeset in webkit [259694] by
-
- 4 edits in trunk/Tools
[ews] Improve summary for CheckPatchRelevance build step
https://bugs.webkit.org/show_bug.cgi?id=210146
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps.py:
(CheckPatchRelevance): Improved success message.
(CheckPatchRelevance.start):
(CheckPatchRelevance.getResultSummary): Improved failure message.
- BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
- BuildSlaveSupport/ews-app/ews/views/statusbubble.py: Updated accordingly.
- 5:34 PM Changeset in webkit [259693] by
-
- 4 edits in trunk/Source/WebKit
ITP Debug Mode logs should be more generic now that it blocks all third-party cookies by default
https://bugs.webkit.org/show_bug.cgi?id=210133
<rdar://problem/61399686>
Reviewed by Brent Fulgham.
No new tests. Just a change of logging.
- NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking):
Now logs if either vector has entries and uses more generic language.
- NetworkProcess/Classifier/ResourceLoadStatisticsMemoryStore.cpp:
(WebKit::ResourceLoadStatisticsMemoryStore::updateCookieBlocking):
Now logs if either vector has entries and uses more generic language.
- NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:
(WebKit::ResourceLoadStatisticsStore::debugLogDomainsInBatches):
Removed hard-coded references to third-party cookie blocking and parameterized it instead.
- 5:32 PM Changeset in webkit [259692] by
-
- 5 edits in branches/safari-609-branch/Source/WebCore
Cherry-pick r259388. rdar://problem/61269730
[iOS] Allow WebKit to use camera in multi-tasking mode
https://bugs.webkit.org/show_bug.cgi?id=209904
Reviewed by Youenn Fablet.
Source/WebCore:
- platform/mediastream/mac/AVVideoCaptureSource.mm: (WebCore::AVVideoCaptureSource::setupSession):
Source/WebCore/PAL:
- pal/cocoa/AVFoundationSoftLink.h:
- pal/cocoa/AVFoundationSoftLink.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:32 PM Changeset in webkit [259691] by
-
- 8 edits in branches/safari-609-branch/Source/WebCore
Cherry-pick r259363. rdar://problem/61269736
CRASH in MediaPlayerPrivateMediaSourceAVFObjC::addAudioRenderer(), uncaught ObjC exception
https://bugs.webkit.org/show_bug.cgi?id=209827
<rdar://problem/61113080>
Reviewed by Eric Carlson.
-[AVSampleBufferAudioRenderer init] can, in exceptional conditions, return nil. Passing a
nil object, or another object that AVSampleBufferRenderSynchronizer considers "invalid", into
-[AVSampleBufferRenderSynchronizer addRenderer:] will throw an exception. Protect against this
scenario in two ways:
- Check the return value of -[AVSampleBufferAudioRenderer init], and if nil, log an error, log to console, and set the network state to "DecodeError".
- Wrap calls to -addRenderer: in @try/@catch blocks, which if caught, log an error, assert, and set the network state to "DecodeError".
- Modules/mediasource/MediaSource.cpp: (WebCore::MediaSource::failedToCreateRenderer):
- Modules/mediasource/MediaSource.h:
- platform/graphics/MediaSourcePrivateClient.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
- platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm: (WebCore::MediaSourcePrivateAVFObjC::failedToCreateAudioRenderer): (WebCore::MediaSourcePrivateAVFObjC::failedToCreateVideoRenderer):
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: (WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259363 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:32 PM Changeset in webkit [259690] by
-
- 6 edits in branches/safari-609-branch/Source
Cherry-pick r259338. rdar://problem/61269727
Support resolution of IPv6 STUN/TURN addresses
https://bugs.webkit.org/show_bug.cgi?id=209808
Reviewed by Eric Carlson.
Source/WebCore:
Add family access to IPAddress to support both IPv4 and IPv6.
Store IPAddress internal value as IPv6 and cast them to IPv4 on demand.
- platform/network/DNS.h:
- platform/network/soup/DNSResolveQueueSoup.cpp: (WebCore::resolvedWithObserverCallback):
Source/WebKit:
Update code to support IPv6 addresses when doing DNS resolution of TURN/STUN servers.
Refactor code to share more code between Cocoa ports and non Cocoa ports.
Manually tested with external IPv6 TURN servers.
- NetworkProcess/webrtc/NetworkRTCProvider.cpp: (WebKit::NetworkRTCProvider::createResolver):
- NetworkProcess/webrtc/NetworkRTCResolverCocoa.cpp: (WebKit::resolvedName):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259338 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:32 PM Changeset in webkit [259689] by
-
- 11 edits in branches/safari-609-branch/Source
Cherry-pick r259316. rdar://problem/61269751
IndexedDB: destroy WebIDBServer when session is removed in network process
https://bugs.webkit.org/show_bug.cgi?id=209606
<rdar://problem/59310081>
Reviewed by Geoffrey Garen.
Source/WebCore:
Rename immediateCloseForUserDelete to immediateClose as we now use it in destructor of IDBServer to make sure
everything in database finishes correctly.
- Modules/indexeddb/server/IDBServer.cpp: (WebCore::IDBServer::IDBServer::~IDBServer): (WebCore::IDBServer::IDBServer::closeAndDeleteDatabasesModifiedSince): (WebCore::IDBServer::IDBServer::closeAndDeleteDatabasesForOrigins):
- Modules/indexeddb/server/UniqueIDBDatabase.cpp: (WebCore::IDBServer::UniqueIDBDatabase::immediateClose): (WebCore::IDBServer::UniqueIDBDatabase::immediateCloseForUserDelete): Deleted.
- Modules/indexeddb/server/UniqueIDBDatabase.h:
Source/WebKit:
Tested manually to verify WebIDBServer is removed and its thread ends when session is removed.
- NetworkProcess/IndexedDB/WebIDBServer.cpp: (WebKit::WebIDBServer::~WebIDBServer): (WebKit::WebIDBServer::addConnection): (WebKit::WebIDBServer::removeConnection): (WebKit::WebIDBServer::close):
- NetworkProcess/IndexedDB/WebIDBServer.h:
- NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::destroySession): (WebKit::NetworkProcess::connectionToWebProcessClosed):
Source/WTF:
Add function to kill CrossThreadTaskHandler and make thread finish. Also add a callback to be called before
thread finishes.
- wtf/CrossThreadTaskHandler.cpp: (WTF::CrossThreadTaskHandler::CrossThreadTaskHandler): (WTF::CrossThreadTaskHandler::setCompletionCallback): (WTF::CrossThreadTaskHandler::kill):
- wtf/CrossThreadTaskHandler.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@259316 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:32 PM Changeset in webkit [259688] by
-
- 2 edits in trunk/Source/WebKit
Move the misplaced statement to the proper place where in
RESOURCE_LOAD_STATISTICS macro.
This patch removes the build warning below since r259275.
warning: unused variable ‘sameSiteStrictEnforcementEnabled’ [-Wunused-variable]
No new tests, no new behavior changes.
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::ensureNetworkProcess):
- 4:43 PM Changeset in webkit [259687] by
-
- 41 edits2 adds in trunk
AX: VoiceOver can't activate combobox when textfield is inside it
https://bugs.webkit.org/show_bug.cgi?id=210081
Reviewed by Joanmarie Diggs.
Source/WebCore:
Change accessKeyAction to return whether a simulated click event was dispatched.
Accessibility uses that information to decide whether it should sent an event afterwards, because
some objects accessKeyAction is only to focus(). AX is expected here to press on the object (and possibly focus).
Test: accessibility/activation-of-input-field-inside-other-element.html
- accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::press):
- dom/Element.h:
(WebCore::Element::accessKeyAction):
- html/BaseCheckableInputType.cpp:
(WebCore::BaseCheckableInputType::accessKeyAction):
- html/BaseCheckableInputType.h:
- html/BaseChooserOnlyDateAndTimeInputType.cpp:
(WebCore::BaseChooserOnlyDateAndTimeInputType::accessKeyAction):
- html/BaseChooserOnlyDateAndTimeInputType.h:
- html/BaseClickableWithKeyInputType.cpp:
(WebCore::BaseClickableWithKeyInputType::accessKeyAction):
- html/BaseClickableWithKeyInputType.h:
- html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::accessKeyAction):
- html/HTMLAnchorElement.h:
- html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::accessKeyAction):
- html/HTMLButtonElement.h:
- html/HTMLElement.cpp:
(WebCore::HTMLElement::accessKeyAction):
- html/HTMLElement.h:
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::accessKeyAction):
- html/HTMLInputElement.h:
- html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::accessKeyAction):
- html/HTMLLabelElement.h:
- html/HTMLLegendElement.cpp:
(WebCore::HTMLLegendElement::accessKeyAction):
- html/HTMLLegendElement.h:
- html/HTMLOptGroupElement.cpp:
(WebCore::HTMLOptGroupElement::accessKeyAction):
- html/HTMLOptGroupElement.h:
- html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::accessKeyAction):
- html/HTMLOptionElement.h:
- html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::accessKeyAction):
- html/HTMLSelectElement.h:
- html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::accessKeyAction):
- html/HTMLTextAreaElement.h:
- html/HiddenInputType.cpp:
(WebCore::HiddenInputType::accessKeyAction):
- html/HiddenInputType.h:
- html/InputType.cpp:
(WebCore::InputType::accessKeyAction):
- html/InputType.h:
- html/RangeInputType.cpp:
(WebCore::RangeInputType::accessKeyAction):
- html/RangeInputType.h:
- svg/SVGElement.cpp:
(WebCore::SVGElement::accessKeyAction):
- svg/SVGElement.h:
LayoutTests:
- accessibility/activation-of-input-field-inside-other-element-expected.txt: Added.
- accessibility/activation-of-input-field-inside-other-element.html: Added.
- 4:42 PM Changeset in webkit [259686] by
-
- 2 edits in trunk/LayoutTests
[ iOS ] http/tests/security/appcache-in-private-browsing.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=206750
Unreviewed test gardening.
- platform/ios-wk2/TestExpectations:
- 4:36 PM Changeset in webkit [259685] by
-
- 2 edits in branches/safari-609-branch/Source/WebKit
Cherry-pick r257222. rdar://problem/61414891
Protect WebProcessPool from null weak pointers in m_serviceWorkerProcesses map
https://bugs.webkit.org/show_bug.cgi?id=208143
rdar://problem/58285589
Reviewed by Alex Christensen.
- UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::createWebPage): (WebKit::WebProcessPool::updateServiceWorkerUserAgent): (WebKit::WebProcessPool::updateProcessAssertions): When iterating through the map, make sure it does not have a null entry.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257222 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 4:25 PM Changeset in webkit [259684] by
-
- 2 edits in trunk/LayoutTests
[ Catalina wk2 ] webrtc/peer-connection-audio-mute2.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=210165
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 4:24 PM Changeset in webkit [259683] by
-
- 3 edits1 add in trunk
[JSC] Collect-continuously thread should take m_collectContinuouslyLock while it is waking up concurrent collector thread
https://bugs.webkit.org/show_bug.cgi?id=210163
Reviewed by Saam Barati.
JSTests:
- stress/collect-continuously-should-not-wake-concurrent-collector-after-prevent-collection-is-called.js: Added.
(let.theCode):
Source/JavaScriptCore:
Collect-Continuously thread has fancy race issue.
In Heap::preventCollection, we first take m_collectContinuouslyLock to ensure collect-continuously thread is not working, and then
we ensure collector thread is stopped by using waitForCollector. However our collect-continuously thread is implemented like this.
while (!m_shouldStopCollectingContinuously) {
{ (A)
LockHolder locker(*m_threadLock);
if (m_requests.isEmpty()) {
m_requests.append(WTF::nullopt);
m_lastGrantedTicket++;
m_threadCondition->notifyOne(locker); (B) WAKING UP concurrent collector thread.
}
}
{
LockHolder locker(m_collectContinuouslyLock);
...
while (!hasElapsed(timeToWakeUp) && !m_shouldStopCollectingContinuously)
m_collectContinuouslyCondition.waitUntil(m_collectContinuouslyLock, timeToWakeUp);
}
}
Even if m_collectContinuouslyLock is taken, collect-continuously thread is still able to wake up concurrent collector thread
since (B)'s code is not guarded by m_collectContinuouslyLock. The following sequence can happen,
- The main thread calls Heap::preventCollection to ensure all collection is stopped.
- The collect-continuously thread is at (A) point.
- The main thread takes m_collectContinuouslyLock. This is OK.
- The main thread calls waitForCollector to ensure that concurrent collector thread is stopped.
- The collect-continuously thread executes (B). It is allowed since this is not guarded by m_collectContinuouslyLock. So, concurrent collector starts working.
- While the main thread called Heap::preventCollection, concurrent collector starts collection!
We should guard (A)'s block with m_collectContinuouslyLock too.
- heap/Heap.cpp:
(JSC::Heap::notifyIsSafeToCollect):
- 4:12 PM Changeset in webkit [259682] by
-
- 2 edits in trunk/LayoutTests
[ iOS wk2 ] http/wpt/cache-storage/cache-put-keys.https.any.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=207496
Unreviewed test gardening.
- platform/ios-simulator-wk2/TestExpectations:
- 4:11 PM Changeset in webkit [259681] by
-
- 3 edits2 adds in trunk
Delete ICs can't cache dictionaries
https://bugs.webkit.org/show_bug.cgi?id=210147
<rdar://problem/61382405>
Reviewed by Tadeu Zagallo.
JSTests:
- stress/dont-cache-delete-ic-on-dictionary-2.js: Added.
(assert):
(makeDictionary):
(foo):
- stress/dont-cache-delete-ic-on-dictionary.js: Added.
(assert):
(foo):
Source/JavaScriptCore:
We were happily caching delete IC cases on a dictionary object.
This is clearly wrong, as we might cache a miss on a dictionary
on a property "P", even though we might add "P" to the structure
without transitioning it.
- jit/Repatch.cpp:
(JSC::tryCacheDeleteBy):
- 4:01 PM Changeset in webkit [259680] by
-
- 26 edits in trunk
[WebAuthn] Cancel WebAuthn requests when users cancel LocalAuthentication prompts
https://bugs.webkit.org/show_bug.cgi?id=209923
<rdar://problem/61223713>
Reviewed by Brent Fulgham.
Source/WebCore:
Covered by new tests within existing test files.
- testing/MockWebAuthenticationConfiguration.h:
(WebCore::MockWebAuthenticationConfiguration::LocalConfiguration::encode const):
(WebCore::MockWebAuthenticationConfiguration::LocalConfiguration::decode):
- testing/MockWebAuthenticationConfiguration.idl:
Adds a new parameter to reflect user cancellations on LocalAuthentication UI.
Source/WebKit:
This patch intents to streamline WebAuthn local authenticator UX a bit more. Here, we should treat user
cancellation of the LocalAuthentication UI as if it were being done on the UI Client's WebAuthn UI.
- UIProcess/WebAuthentication/Authenticator.h:
- UIProcess/WebAuthentication/AuthenticatorManager.cpp:
(WebKit::AuthenticatorManager::cancelRequest):
- UIProcess/WebAuthentication/AuthenticatorManager.h:
- UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.h:
- UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:
(WebKit::LocalAuthenticator::continueMakeCredentialAfterUserVerification):
(WebKit::LocalAuthenticator::continueGetAssertionAfterUserVerification):
(WebKit::LocalAuthenticator::validateUserVerification const):
- UIProcess/WebAuthentication/Cocoa/LocalConnection.h:
- UIProcess/WebAuthentication/Cocoa/LocalConnection.mm:
(WebKit::LocalConnection::verifyUser const):
- UIProcess/WebAuthentication/Mock/MockLocalConnection.mm:
(WebKit::MockLocalConnection::MockLocalConnection):
(WebKit::MockLocalConnection::verifyUser const):
(WebKit::MockLocalConnection::filterResponses const):
- WebKit.xcodeproj/project.pbxproj:
Tools:
Modifies existing tests to accommodate changes in MockWebAuthenticationConfiguration.idl.
- TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-la.html:
- TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-duplicate-credential.html:
- TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la-error.html:
- TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-la.html:
LayoutTests:
Adds a new test for the change and modifies existing tests to accommodate changes in MockWebAuthenticationConfiguration.idl.
- http/wpt/webauthn/public-key-credential-create-failure-local-silent.https.html:
- http/wpt/webauthn/public-key-credential-create-failure-local.https-expected.txt:
- http/wpt/webauthn/public-key-credential-create-failure-local.https.html:
- http/wpt/webauthn/public-key-credential-create-success-local.https.html:
- http/wpt/webauthn/public-key-credential-get-failure-local-silent.https.html:
- http/wpt/webauthn/public-key-credential-get-failure-local.https.html:
- http/wpt/webauthn/public-key-credential-get-success-local.https.html:
- 3:50 PM Changeset in webkit [259679] by
-
- 2 edits in trunk/Source/WebKit
[ macOS ] Update sandbox rules for storage
https://bugs.webkit.org/show_bug.cgi?id=210120
<rdar://problem/60972224>
Patch by Sihui Liu <sihui_liu@hotmail.com> on 2020-04-07
Reviewed by Geoffrey Garen.
This direcotry is used for cookie storage.
- NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
- 3:41 PM Changeset in webkit [259678] by
-
- 2 edits in trunk/LayoutTests
[ macOS debug ] REGRESSION (r259463): http/tests/media/clearkey/collect-webkit-media-session.html is failing
https://bugs.webkit.org/show_bug.cgi?id=209989
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 3:39 PM Changeset in webkit [259677] by
-
- 1 edit in branches/safari-609-branch/Source/WebCore/html/HTMLMediaElement.cpp
Unreviewed build fix, rdar://problem/61352465
No viable conversion from 'WebCore::HTMLMediaElement' to 'WebCore::HTMLMediaElement *'
- 3:32 PM Changeset in webkit [259676] by
-
- 97 edits2 copies2 adds in trunk
Not using strict mode within ClassDeclaration statement
https://bugs.webkit.org/show_bug.cgi?id=205578
<rdar://problem/58194589>
Reviewed by Yusuke Suzuki.
JSTests:
- stress/inline-strict-delete.js: Added.
(assert):
(bar):
(foo):
- stress/superclass-expression-strictness.js: Added.
(f.try.c):
(f):
Source/JavaScriptCore:
We correctly set strict mode when parsing classes, but we did not set it when emitting bytecode.
However, that means that we can now have a subset of a code block's bytecode that must be run in
strict mode, even when the code block itself is not strict. As it turns out, there are only ten
opcodes that need to be aware of strictness, so an extramode
operand was added to these opcodes.
The mode then needs to be propagated through baseline, DFG and FTL.
- API/APICallbackFunction.h:
(JSC::APICallbackFunction::call):
- API/JSCallbackObjectFunctions.h:
(JSC::JSCallbackObject<Parent>::call):
- API/JSContextRef.cpp:
(JSContextGetGlobalObject):
- CMakeLists.txt:
- JavaScriptCore.xcodeproj/project.pbxproj:
- Sources.txt:
- bytecode/BytecodeDumper.cpp:
- bytecode/BytecodeGeneratorification.cpp:
(JSC::BytecodeGeneratorification::run):
- bytecode/BytecodeList.rb:
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpAssumingJITType const):
(JSC::CodeBlock::finishCreation):
- bytecode/CodeBlock.h:
(JSC::CodeBlock::isConstructor const):
(JSC::CodeBlock::isKnownCell):
- bytecode/ExecutableInfo.h:
(JSC::ExecutableInfo::ExecutableInfo):
(JSC::ExecutableInfo::usesEval const):
- bytecode/Fits.h:
- bytecode/InlineCallFrame.cpp:
(JSC::InlineCallFrame::dumpInContext const):
- bytecode/InlineCallFrame.h:
(JSC::InlineCallFrame::isInStrictContext const):
- bytecode/PutByIdFlags.cpp:
(WTF::printInternal):
- bytecode/PutByIdFlags.h:
(JSC::PutByIdFlags::create):
(JSC::PutByIdFlags::createDirect):
(JSC::PutByIdFlags::isDirect const):
(JSC::PutByIdFlags::ecmaMode const):
(JSC::PutByIdFlags::PutByIdFlags):
- bytecode/PutByIdStatus.cpp:
(JSC::PutByIdStatus::computeFromLLInt):
- bytecode/UnlinkedCodeBlock.cpp:
(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):
- bytecode/UnlinkedCodeBlock.h:
(JSC::UnlinkedCodeBlock::isConstructor const):
- bytecode/UnlinkedCodeBlockGenerator.h:
(JSC::UnlinkedCodeBlockGenerator::needsClassFieldInitializer const):
- bytecode/UnlinkedFunctionExecutable.cpp:
(JSC::generateUnlinkedFunctionCodeBlock):
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitGetFromScope):
(JSC::BytecodeGenerator::emitPutToScope):
(JSC::BytecodeGenerator::emitPutById):
(JSC::BytecodeGenerator::emitDirectPutById):
(JSC::BytecodeGenerator::emitDeleteById):
(JSC::BytecodeGenerator::emitPutByVal):
(JSC::BytecodeGenerator::emitDirectPutByVal):
(JSC::BytecodeGenerator::emitDeleteByVal):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitPushFunctionNameScope):
(JSC::BytecodeGenerator::emitReadOnlyExceptionIfNeeded):
(JSC::BytecodeGenerator::emitToThis):
- bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::generate):
(JSC::BytecodeGenerator::ecmaMode const):
(JSC::StrictModeScope::StrictModeScope):
- bytecompiler/NodesCodegen.cpp:
(JSC::AssignResolveNode::emitBytecode):
(JSC::EmptyLetExpression::emitBytecode):
(JSC::ForInNode::emitLoopHeader):
(JSC::ForOfNode::emitBytecode):
(JSC::ClassExprNode::emitBytecode):
(JSC::BindingNode::bindValue const):
(JSC::AssignmentElementNode::bindValue const):
- debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::thisValue const):
(JSC::DebuggerCallFrame::evaluateWithScopeExtension):
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::isToThisAnIdentity):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleDOMJITCall):
(JSC::DFG::ByteCodeParser::handleDeleteById):
(JSC::DFG::ByteCodeParser::emitPutById):
(JSC::DFG::ByteCodeParser::handlePutById):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::parseCodeBlock):
(JSC::DFG::ByteCodeParser::handlePutByVal):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupToThis):
- dfg/DFGGraph.h:
(JSC::DFG::Graph::globalThisObjectFor):
- dfg/DFGNode.h:
(JSC::DFG::Node::hasECMAMode):
(JSC::DFG::Node::ecmaMode):
- dfg/DFGOpInfo.h:
(JSC::DFG::OpInfo::OpInfo):
- dfg/DFGOperations.cpp:
- dfg/DFGPreciseLocalClobberize.h:
(JSC::DFG::PreciseLocalClobberizeAdaptor::readTop):
- dfg/DFGPredictionPropagationPhase.cpp:
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileDoublePutByVal):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForCellWithString):
(JSC::DFG::SpeculativeJIT::compilePutByValForCellWithSymbol):
(JSC::DFG::SpeculativeJIT::compilePutDynamicVar):
(JSC::DFG::SpeculativeJIT::compilePutByIdFlush):
(JSC::DFG::SpeculativeJIT::compilePutById):
(JSC::DFG::SpeculativeJIT::compilePutByIdDirect):
(JSC::DFG::SpeculativeJIT::compilePutByIdWithThis):
(JSC::DFG::SpeculativeJIT::compileToThis):
(JSC::DFG::SpeculativeJIT::cachedPutById):
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::emitCall):
(JSC::DFG::SpeculativeJIT::compile):
(JSC::DFG::SpeculativeJIT::compileDeleteById):
(JSC::DFG::SpeculativeJIT::compileDeleteByVal):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileToThis):
(JSC::FTL::DFG::LowerDFGToB3::compilePutByIdWithThis):
(JSC::FTL::DFG::LowerDFGToB3::compilePutByValWithThis):
(JSC::FTL::DFG::LowerDFGToB3::compilePutById):
(JSC::FTL::DFG::LowerDFGToB3::compilePutByVal):
(JSC::FTL::DFG::LowerDFGToB3::compileDelBy):
(JSC::FTL::DFG::LowerDFGToB3::compileDeleteById):
(JSC::FTL::DFG::LowerDFGToB3::compileDeleteByVal):
(JSC::FTL::DFG::LowerDFGToB3::compileCallEval):
(JSC::FTL::DFG::LowerDFGToB3::compilePutDynamicVar):
- inspector/JSInjectedScriptHost.cpp:
(Inspector::JSInjectedScriptHost::internalConstructorName):
- interpreter/Interpreter.cpp:
(JSC::eval):
(JSC::Interpreter::execute):
- interpreter/Interpreter.h:
- jit/AssemblyHelpers.h:
- jit/JITCall.cpp:
(JSC::JIT::compileCallEval):
- jit/JITInlineCacheGenerator.cpp:
(JSC::JITPutByIdGenerator::slowPathFunction):
- jit/JITInlineCacheGenerator.h:
(JSC::JITPutByIdGenerator::JITPutByIdGenerator):
- jit/JITInlines.h:
(JSC::JIT::linkSlowCaseIfNotJSCell):
(JSC::JIT::emitJumpSlowCaseIfNotJSCell):
- jit/JITOperations.cpp:
- jit/JITOperations.h:
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitPutByValWithCachedId):
(JSC::JIT::emitSlow_op_put_by_val):
(JSC::JIT::emitSlow_op_del_by_id):
(JSC::JIT::emitSlow_op_del_by_val):
(JSC::JIT::emit_op_put_by_id):
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emitSlow_op_put_by_val):
- jit/Repatch.cpp:
(JSC::tryCacheDeleteBy):
(JSC::repatchDeleteBy):
- jit/Repatch.h:
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::commonCallEval):
- runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncPop):
(JSC::arrayProtoFuncPush):
(JSC::arrayProtoFuncReverse):
(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSlice):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):
(JSC::arrayProtoFuncIndexOf):
(JSC::arrayProtoFuncLastIndexOf):
- runtime/CachedTypes.cpp:
(JSC::CachedCodeBlock::usesEval const):
(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):
(JSC::CachedCodeBlock<CodeBlockType>::encode):
- runtime/ClonedArguments.cpp:
(JSC::ClonedArguments::getOwnPropertySlot):
(JSC::ClonedArguments::materializeSpecials):
- runtime/CodeCache.cpp:
(JSC::generateUnlinkedCodeBlockImpl):
- runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL):
- runtime/CommonSlowPathsInlines.h:
(JSC::CommonSlowPaths::tryCachePutToScopeGlobal):
(JSC::CommonSlowPaths::tryCacheGetFromScopeGlobal):
- runtime/Completion.cpp:
(JSC::evaluate):
- runtime/DirectEvalExecutable.cpp:
(JSC::DirectEvalExecutable::create):
- runtime/DirectEvalExecutable.h:
- runtime/ECMAMode.cpp: Copied from Source/JavaScriptCore/bytecode/PutByIdFlags.cpp.
(JSC::ECMAMode::dump const):
- runtime/ECMAMode.h: Copied from Source/JavaScriptCore/bytecode/PutByIdFlags.h.
(JSC::ECMAMode::fromByte):
(JSC::ECMAMode::strict):
(JSC::ECMAMode::sloppy):
(JSC::ECMAMode::isStrict const):
(JSC::ECMAMode::value const):
(JSC::ECMAMode::ECMAMode):
- runtime/EvalExecutable.h:
(JSC::EvalExecutable::executableInfo const):
- runtime/FunctionExecutable.h:
- runtime/GetPutInfo.cpp:
(JSC::GetPutInfo::dump const):
- runtime/GetPutInfo.h:
(JSC::GetPutInfo::GetPutInfo):
(JSC::GetPutInfo::ecmaMode const):
- runtime/GetterSetter.cpp:
(JSC::callSetter):
- runtime/IndirectEvalExecutable.cpp:
(JSC::IndirectEvalExecutable::create):
(JSC::IndirectEvalExecutable::IndirectEvalExecutable):
- runtime/IndirectEvalExecutable.h:
- runtime/JSCJSValue.cpp:
(JSC::JSValue::toThisSlowCase const):
(JSC::JSValue::putToPrimitive):
- runtime/JSCJSValue.h:
- runtime/JSCell.cpp:
(JSC::JSCell::toThis):
- runtime/JSFunction.cpp:
(JSC::JSFunction::selectStructureForNewFuncExp):
(JSC::JSFunction::callerGetter):
- runtime/JSGlobalObjectFunctions.cpp:
(JSC::globalFuncEval):
(JSC::globalFuncProtoGetter):
(JSC::globalFuncProtoSetter):
- runtime/JSObject.cpp:
(JSC::JSObject::putInlineSlow):
(JSC::JSObject::setPrototypeWithCycleCheck):
- runtime/JSScope.cpp:
(JSC::JSScope::toThis):
- runtime/JSString.cpp:
(JSC::JSString::toThis):
- runtime/LiteralParser.cpp:
(JSC::LiteralParser<CharType>::parse):
- runtime/ModuleProgramExecutable.h:
- runtime/NullSetterFunction.cpp:
(JSC::GetCallerStrictnessFunctor::operator() const):
(JSC::NullSetterFunctionInternal::callReturnUndefined):
- runtime/ObjectPrototype.cpp:
(JSC::objectProtoFuncValueOf):
(JSC::objectProtoFuncHasOwnProperty):
(JSC::objectProtoFuncIsPrototypeOf):
(JSC::objectProtoFuncDefineGetter):
(JSC::objectProtoFuncDefineSetter):
(JSC::objectProtoFuncLookupGetter):
(JSC::objectProtoFuncLookupSetter):
(JSC::objectProtoFuncPropertyIsEnumerable):
(JSC::objectProtoFuncToLocaleString):
(JSC::objectProtoFuncToString):
- runtime/ProgramExecutable.cpp:
(JSC::ProgramExecutable::initializeGlobalProperties):
- runtime/ProgramExecutable.h:
- runtime/ProxyObject.cpp:
(JSC::performProxyCall):
- runtime/ScriptExecutable.h:
(JSC::ScriptExecutable::isArrowFunctionContext const):
(JSC::ScriptExecutable::isInStrictContext const):
- runtime/SparseArrayValueMap.cpp:
(JSC::SparseArrayEntry::put):
Source/WebCore:
Test: JSTests/ stress/superclass-expression-strictness.js
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::IDLOperation<JSDOMWindow>::cast):
- bindings/js/JSEventTargetCustom.h:
(WebCore::IDLOperation<JSEventTarget>::call):
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
LayoutTests:
Fix the test since it contained incorrect code.
- js/class-syntax-method-names-expected.txt:
- js/script-tests/class-syntax-method-names.js:
- 3:27 PM Changeset in webkit [259675] by
-
- 8 edits in trunk
Unreviewed, reverting r259655.
Caused assertion failures and timeouts on iOS bots
Reverted changeset:
"Return app-bound sessions for instances where
WKAppBoundDomains is"
https://bugs.webkit.org/show_bug.cgi?id=210124
https://trac.webkit.org/changeset/259655
- 3:09 PM Changeset in webkit [259674] by
-
- 11 edits3 deletes in trunk/Source
Merge DependencyAssertion into ProcessAssertion
https://bugs.webkit.org/show_bug.cgi?id=210076
Reviewed by Alex Christensen.
Source/WebKit:
Merge DependencyAssertion into ProcessAssertion. After r259610, ProcessAssertion can use
RunningBoard assertions so there is no longer any need to a separate DependencyAssertion
class. We can simply introduce a new assertion type to ProcessAssertion.
- Shared/DependencyProcessAssertion.cpp: Removed.
- Shared/DependencyProcessAssertion.h: Removed.
- Shared/ios/DependencyProcessAssertionIOS.mm: Removed.
- Sources.txt:
- SourcesCocoa.txt:
- UIProcess/ProcessAssertion.h:
- UIProcess/ios/ProcessAssertionIOS.mm:
(-[WKProcessAssertionBackgroundTaskManager init]):
(-[WKProcessAssertionBackgroundTaskManager _hasBackgroundTask]):
(-[WKProcessAssertionBackgroundTaskManager _updateBackgroundTask]):
(-[WKProcessAssertionBackgroundTaskManager _releaseBackgroundTask]):
(WebKit::runningBoardNameForAssertionType):
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeConnection):
- WebProcess/WebProcess.h:
Source/WTF:
- wtf/PlatformHave.h:
- 3:07 PM Changeset in webkit [259673] by
-
- 10 edits in trunk/Source/WebKit
Simplify and fortify network getNetworkProcessConnection and getGPUProcessConnection
https://bugs.webkit.org/show_bug.cgi?id=210142
<rdar://problem/59488963>
Patch by Alex Christensen <achristensen@webkit.org> on 2020-04-07
Reviewed by Youenn Fablet.
We have reports of hangs inside WebKit::getNetworkProcessConnection that seem to last forever.
Some of the reports indicate the network process is being suspended while a connection is being established with it.
To fix this issue we do three things:
- We take a foregroundActivity when sending an async message to establish a connection.
- We use sendWithAsyncReply which already has logic to handle the case where we are currently launching the process. Instead of the complicated retry logic, we add a retry attempt in WebProcessPool if the connection identifier is invalid.
- Add some release logging so we can better diagnose problems with this flow in the future.
The functional change is adding the foreground activity, which should prevent some hangs.
The rest is just to make this code more sane to understand and debug.
I do the same changes to NetworkProcess and GPUProcess because they are intended to be the same. The latter is based on the former.
The API test WebKit.NetworkProcessCrashWithPendingConnection covers what happens when the network process crashes during connection establishment.
It fails if we don't retry somewhere, which I did in WebProcessPool. We also need to try again in getNetworkProcessConnection and getGPUProcessConnection.
If it fails twice, there's nothing we can do, and we crash the web process to avoid a crash loop.
- UIProcess/GPU/GPUProcessProxy.cpp:
(WebKit::GPUProcessProxy::getGPUProcessConnection):
(WebKit::GPUProcessProxy::didFinishLaunching):
(WebKit::GPUProcessProxy::~GPUProcessProxy): Deleted.
(WebKit::GPUProcessProxy::openGPUProcessConnection): Deleted.
- UIProcess/GPU/GPUProcessProxy.h:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::~NetworkProcessProxy):
(WebKit::NetworkProcessProxy::getNetworkProcessConnection):
(WebKit::NetworkProcessProxy::networkProcessCrashed):
(WebKit::NetworkProcessProxy::didFinishLaunching):
(WebKit::NetworkProcessProxy::openNetworkProcessConnection): Deleted.
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::networkProcessCrashed):
(WebKit::WebProcessPool::getNetworkProcessConnection):
(WebKit::WebProcessPool::getGPUProcessConnection):
- UIProcess/WebProcessPool.h:
- WebProcess/GPU/GPUProcessConnectionInfo.h:
(WebKit::GPUProcessConnectionInfo::identifier const):
(WebKit::GPUProcessConnectionInfo::identifier): Deleted.
- WebProcess/Network/NetworkProcessConnectionInfo.h:
(WebKit::NetworkProcessConnectionInfo::identifier const):
(WebKit::NetworkProcessConnectionInfo::identifier): Deleted.
- 2:33 PM Changeset in webkit [259672] by
-
- 8 edits in trunk/Source
Use RectEdges<> in some scrolling tree code
https://bugs.webkit.org/show_bug.cgi?id=210141
Reviewed by Tim Horton.
Source/WebCore:
Add utility functions on ScrollingTreeScrollingNode to get pinned and rubberband state.
Use them to push main frame state to the scrolling tree (which we do so we can safely
access the state from the EventDispatcher thread).
- page/scrolling/ScrollingTree.cpp:
(WebCore::ScrollingTree::setMainFramePinnedState):
(WebCore::ScrollingTree::setMainFrameCanRubberBand):
(WebCore::ScrollingTree::willWheelEventStartSwipeGesture):
(WebCore::ScrollingTree::setMainFramePinState): Deleted.
(WebCore::ScrollingTree::setCanRubberBandState): Deleted.
- page/scrolling/ScrollingTree.h:
- page/scrolling/ScrollingTreeScrollingNode.cpp:
(WebCore::ScrollingTreeScrollingNode::edgePinnedState const):
(WebCore::ScrollingTreeScrollingNode::isRubberBanding const):
- page/scrolling/ScrollingTreeScrollingNode.h:
- page/scrolling/mac/ScrollingTreeFrameScrollingNodeMac.mm:
(WebCore::ScrollingTreeFrameScrollingNodeMac::updateMainFramePinAndRubberbandState):
Source/WebKit:
Construct a RectEdges<>. Order is top, right, bottom, left.
- WebProcess/WebPage/EventDispatcher.cpp:
(WebKit::EventDispatcher::wheelEvent):
- 2:14 PM Changeset in webkit [259671] by
-
- 9 edits in trunk
AX: Change ATK mapping of the ARIA alert and alertdialog roles
https://bugs.webkit.org/show_bug.cgi?id=210121
Reviewed by Chris Fleizach.
Source/WebCore:
The ARIA alert role is a live region; not a dialog/message box. In contrast,
the ATK alert role is for dialogs such as a warning message which should be
presented immediately to the user. Because of the similarity in role names,
the original mappings in the Core-AAM were not ideal. They have recently
been fixed so we need to update our implementation accordingly.
Changed mappings
- alertdialog from ATK_ROLE_DIALOG to ATK_ROLE_ALERT
- alert from ATK_ROLE_ALERT to ATK_ROLE_NOTIFICATION
Updated existing tests to reflect this change.
- accessibility/atk/WebKitAccessible.cpp:
(atkRole):
Tools:
Add support for ATK_ROLE_NOTIFICATION.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
LayoutTests:
- accessibility/aria-mappings-expected.txt: Updated.
- accessibility/gtk/xml-roles-exposed-expected.txt: Updated.
- platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt: Updated.
- platform/gtk/accessibility/roles-exposed-expected.txt: Updated.
- 2:09 PM Changeset in webkit [259670] by
-
- 2 edits in trunk/Source/WebKit
[GLIB] Avoid potential segfault in getPlatformEditorState
https://bugs.webkit.org/show_bug.cgi?id=210149
Reviewed by Carlos Alberto Lopez Perez.
Avoid potential surroundingRange dereference segfault.
- WebProcess/WebPage/glib/WebPageGLib.cpp:
(WebKit::WebPage::getPlatformEditorState const):
- 2:00 PM Changeset in webkit [259669] by
-
- 12 edits2 adds in trunk
Preventing touch events should not prevent gestures installed above WKWebView from recognizing
https://bugs.webkit.org/show_bug.cgi?id=210080
<rdar://problem/61365814>
Reviewed by Tim Horton.
Source/WebKit:
Makes a small adjustment to native gesture deferral logic, so that gestures installed above WKWebView (in the
view hierarchy) are not prevented from recognizing by WKDeferringGestureRecognizer. This makes it possible for
WebKit clients to install custom gestures outside of WKWebView that cannot be prevented by web content, without
having to create a separate window and pass touches through to the WKWebView.
Test: fast/events/touch/ios/prevent-default-with-window-tap-gesture.html
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView deferringGestureRecognizer:shouldDeferOtherGestureRecognizer:]):
Tools:
Add a UIScriptController helper method that allows a test to install a tap gesture recognizer on the UIWindow
containing the web view. This method additionally takes a JavaScript callback, which is invoked when the tap
gesture is recognized.
- TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
- TestRunnerShared/UIScriptContext/UIScriptContext.h:
- TestRunnerShared/UIScriptContext/UIScriptController.h:
(WTR::UIScriptController::installTapGestureOnWindow):
- WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
- WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView resetInteractionCallbacks]):
(-[TestRunnerWKWebView didRecognizeTapOnWindow]):
(-[TestRunnerWKWebView windowTapRecognizedCallback]):
(-[TestRunnerWKWebView setWindowTapRecognizedCallback:]):
(-[TestRunnerWKWebView willMoveToWindow:]):
(-[TestRunnerWKWebView didMoveToWindow]):
(-[TestRunnerWKWebView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
- WebKitTestRunner/ios/UIScriptControllerIOS.h:
- WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptControllerIOS::installTapGestureOnWindow):
LayoutTests:
Add a new layout test to verify that calling preventDefault() on touchstart doesn't prevent gesture recognizers
installed above the WKWebView from recognizing. To do this, we use the new UIScriptController method to add a
gesture recognizer to the window containing the web view, and then simulate a tap over an element that prevents
the touchstart event.
- fast/events/touch/ios/prevent-default-with-window-tap-gesture-expected.txt: Added.
- fast/events/touch/ios/prevent-default-with-window-tap-gesture.html: Added.
- resources/ui-helper.js:
(window.UIHelper.async activateElementAfterInstallingTapGestureOnWindow.return.new.Promise.):
(window.UIHelper.async activateElementAfterInstallingTapGestureOnWindow.return.new.Promise):
(window.UIHelper.async activateElementAfterInstallingTapGestureOnWindow):
(window.UIHelper):
- 1:49 PM Changeset in webkit [259668] by
-
- 4 edits in trunk
test262/Runner.pm ignores "async" flag
https://bugs.webkit.org/show_bug.cgi?id=210127
Reviewed by Ross Kirsling.
JSTests:
- test262/expectations.yaml: Mark 56 test cases as failing.
Tools:
This change adds dereferencing for
$data->{flags}
array, makinggrep
work as
expected. Other flags are correctly handled bygetScenarios
function, which
gets a dereferenced array as an argument.
- Scripts/test262/Runner.pm:
(runTest):
- 1:23 PM Changeset in webkit [259667] by
-
- 3 edits in trunk/Tools
Unreviewed, reverting r259446.
Broke Windows testing
Reverted changeset:
"[Windows] Ignore render tree dump based results on Windows"
https://bugs.webkit.org/show_bug.cgi?id=209897
https://trac.webkit.org/changeset/259446
- 1:17 PM Changeset in webkit [259666] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: focus outline of scope bar is clipped
https://bugs.webkit.org/show_bug.cgi?id=209877
<rdar://problem/61173598>
Reviewed by Timothy Hatcher.
- UserInterface/Views/ScopeBar.css:
(.scope-bar):
- 1:07 PM Changeset in webkit [259665] by
-
- 2 edits in trunk/Source/WebKit
Web Automation: Automation.inspectBrowsingContext should bring Web Inspector to front automatically
https://bugs.webkit.org/show_bug.cgi?id=210137
Reviewed by Joseph Pecoraro.
- UIProcess/Automation/mac/WebAutomationSessionMac.mm:
(WebKit::WebAutomationSession::inspectBrowsingContext):
Previously, calling connect() would preload Web Inspector but not show its window. This
made it awkward to use the 'safari:automaticInspection' capability without subsequently
evaluating adebugger;
statement to bring Web Inspector to front.
- 1:03 PM Changeset in webkit [259664] by
-
- 6 edits in branches/safari-609.2.1.2-branch/Source/WebKit
Apply patch. rdar://problem/61231957
- 1:03 PM Changeset in webkit [259663] by
-
- 3 edits in branches/safari-609.2.1.2-branch/Source/WebKit
Apply patch. rdar://problem/61231889
- 1:03 PM Changeset in webkit [259662] by
-
- 2 edits in branches/safari-609.2.1.2-branch/Source/WebKit
Apply patch. rdar://problem/61231881
- 1:03 PM Changeset in webkit [259661] by
-
- 2 edits in branches/safari-609.2.1.2-branch/Source/WebKit
Apply patch. rdar://problem/61404555
- 12:59 PM Changeset in webkit [259660] by
-
- 2 edits in trunk/Tools
[ews] Add unit-test for CheckPatchRelevance build step
https://bugs.webkit.org/show_bug.cgi?id=210140
Reviewed by Jonathan Bedard.
- BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
(TestCheckPatchRelevance):
(TestCheckPatchRelevance.test_relevant_patch):
(TestCheckPatchRelevance.test_non_relevant_patch):
- 12:43 PM Changeset in webkit [259659] by
-
- 8 edits in trunk/Source/WebCore
Make StylePropertyShorthand iterable
https://bugs.webkit.org/show_bug.cgi?id=210117
Reviewed by Darin Adler.
Enable modern for-loops.
- animation/AnimationTimeline.cpp:
(WebCore::transitionMatchesProperty):
(WebCore::compileTransitionPropertiesInStyle):
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::updateStyleIfNeededForProperty):
- css/StyleProperties.cpp:
(WebCore::StyleProperties::propertyIsImportant const):
(WebCore::MutableStyleProperties::setProperty):
- css/StylePropertyShorthand.h:
(WebCore::StylePropertyShorthand::begin const):
(WebCore::StylePropertyShorthand::end const):
- css/parser/CSSPropertyParser.cpp:
(WebCore::CSSPropertyParser::addExpandedPropertyForValue):
- inspector/agents/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getSupportedCSSProperties):
- page/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
- 12:35 PM Changeset in webkit [259658] by
-
- 10 edits in trunk/JSTests
Update JSTests to assume ICU 60+
https://bugs.webkit.org/show_bug.cgi?id=210085
Reviewed by Yusuke Suzuki.
- stress/intl-collator.js:
- stress/intl-constructors-with-proxy.js:
- stress/intl-datetimeformat.js:
- stress/intl-default-locale.js:
- stress/intl-numberformat-format-to-parts.js:
- stress/intl-numberformat.js: Ensure a test case doesn't depend on behavior changed in ICU 64.
- stress/intl-object.js:
- stress/intl-pluralrules.js: Correct two invalid test cases.
- test262/config.yaml:
Remove skips.
- 11:58 AM Changeset in webkit [259657] by
-
- 2 edits in trunk/LayoutTests
Fix my conflict Markers
https://trac.webkit.org/changeset/259656/webkit
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 11:53 AM Changeset in webkit [259656] by
-
- 2 edits in trunk/LayoutTests
REGRESSION: (r258434) [ Mac WK1 ] media/track/track-css-user-override.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=210134
unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 11:43 AM Changeset in webkit [259655] by
-
- 8 edits in trunk
Return app-bound sessions for instances where WKAppBoundDomains is
empty
https://bugs.webkit.org/show_bug.cgi?id=210124
<rdar://problem/61276630>
Reviewed by Brent Fulgham.
Source/WebKit:
No new tests. Behavior confirmed by existing In-App Browser Privacy
tests.
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::sessionWrapperForTask):
Remove the flag checking if In-App Browser Privacy is enabled. We
should return an app-bound session if WKAppBoundDomains is empty so
we no longer need to check the flag here.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomain):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
- UIProcess/WebPageProxy.h:
As described above, we no longer need to check the flag in this
instance as we are determining behavior based on the WKAppBoundDomains
list. Also moved the logic for checking an empty list to setIsNavigatingToAppBoundDomain,
so it should take an Optional (WTF::nullopt indicates an empty list).
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::initializeAppBoundDomains):
Use the flag to enable internal debugging for testing purposes.
- UIProcess/API/APIHTTPCookieStore.cpp:
(API::HTTPCookieStore::filterAppBoundCookies):
Flag no longer needed. This should be gated by whether the domains
list is empty or not.
Tools:
Cleaned up tests to turn the flag on at the start of each In-App
Browser Privacy test.
- TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
(cleanUpInAppBrowserPrivacyTestSettings):
(initializeInAppBrowserPrivacyTestSettings):
(TEST):
- 11:43 AM Changeset in webkit [259654] by
-
- 3 edits4 adds in branches/safari-609.2.1.2-branch
Cherry-pick r257605. rdar://problem/61231926
Poly proto should work with property delete transitions
https://bugs.webkit.org/show_bug.cgi?id=208261
Reviewed by Saam Barati.
JSTests:
- stress/delete-property-poly-proto.js: Added. (A.prototype.set x): (A): (B):
Source/JavaScriptCore:
This patch fixes a bug where the combination of inline caching
and poly proto cause us to cache a setter call along a prototype chain that
is no longer the correct setter to call. This is exposed as a result of
https://bugs.webkit.org/show_bug.cgi?id=206430 since DefineOwnProperty used
to transition to uncacheable dictionary.
The case looks like this:
A - setter for x redefines x
|
B
|
C
We set (new C).x
Right now, we first call A's setter, then we try to figure out what the state of things
were before it was called in order to cache it. We just assume that A's setter still exists, and we cache it
without ever checking, In this patch, we ensure that the property exists and the attributes match in order to prevent crashing.
In the code, A = target, C = base.
Get is correct because it collects caching information before any calls.
The bug https://bugs.webkit.org/show_bug.cgi?id=208337 tracks the remaining semantic bugs around this code.
- jit/Repatch.cpp: (JSC::tryCachePutByID):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@257605 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:43 AM Changeset in webkit [259653] by
-
- 19 edits in branches/safari-609.2.1.2-branch/Source/JavaScriptCore
Cherry-pick r255542. rdar://problem/61231926
[JSC] Hold StructureID instead of Structure* in PolyProtoAccessChain and DFG::CommonData
https://bugs.webkit.org/show_bug.cgi?id=207086
Reviewed by Mark Lam.
PolyProtoAccessChain and DFG::CommonData are kept alive so long as associated AccessCase / DFG/FTL CodeBlock
is alive. They hold Vector<Structure*> / Vector<WriteBarrier<Structure*>>, but access frequency is low. And
We should hold Vector<StructureID> instead to cut 50% of the size.
- bytecode/AccessCase.cpp: (JSC::AccessCase::commit): (JSC::AccessCase::forEachDependentCell const): (JSC::AccessCase::doesCalls const): (JSC::AccessCase::visitWeak const): (JSC::AccessCase::propagateTransitions const): (JSC::AccessCase::generateWithGuard):
- bytecode/AccessCase.h:
- bytecode/CodeBlock.cpp: (JSC::CodeBlock::propagateTransitions): (JSC::CodeBlock::determineLiveness): (JSC::CodeBlock::stronglyVisitWeakReferences):
- bytecode/GetByStatus.cpp: (JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/InByIdStatus.cpp: (JSC::InByIdStatus::computeFor): (JSC::InByIdStatus::computeForStubInfo): (JSC::InByIdStatus::computeForStubInfoWithoutExitSiteFeedback):
- bytecode/InByIdStatus.h:
- bytecode/InstanceOfStatus.cpp: (JSC::InstanceOfStatus::computeFor): (JSC::InstanceOfStatus::computeForStubInfo):
- bytecode/InstanceOfStatus.h:
- bytecode/PolyProtoAccessChain.cpp: (JSC::PolyProtoAccessChain::create): (JSC::PolyProtoAccessChain::needImpurePropertyWatchpoint const): (JSC::PolyProtoAccessChain::dump const):
- bytecode/PolyProtoAccessChain.h: (JSC::PolyProtoAccessChain::chain const): (JSC::PolyProtoAccessChain::forEach const): (JSC::PolyProtoAccessChain::slotBaseStructure const): (JSC::PolyProtoAccessChain:: const): Deleted.
- bytecode/PolymorphicAccess.cpp: (JSC::PolymorphicAccess::regenerate):
- bytecode/PutByIdStatus.cpp: (JSC::PutByIdStatus::computeForStubInfo):
- bytecode/StructureStubInfo.cpp: (JSC::StructureStubInfo::summary const): (JSC::StructureStubInfo::summary):
- bytecode/StructureStubInfo.h:
- dfg/DFGCommonData.h:
- dfg/DFGDesiredWeakReferences.cpp: (JSC::DFG::DesiredWeakReferences::reallyAdd):
- dfg/DFGPlan.cpp: (JSC::DFG::Plan::finalizeWithoutNotifyingCallback):
- jit/Repatch.cpp: (JSC::tryCacheGetBy): (JSC::tryCachePutByID): (JSC::tryCacheInByID):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@255542 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:41 AM Changeset in webkit [259652] by
-
- 12 edits in trunk
RAMification should have a way of gathering vmmaps for each test at the end of each run
https://bugs.webkit.org/show_bug.cgi?id=210060
Reviewed by Yusuke Suzuki.
PerformanceTests:
When I was debugging a memory issue, I needed to gather vmmaps for each
RAMification subtest. This patch is checking in the code I wrote to be able
to do this. It works by:
- Passing in an argument to RAMification saying we want vmmaps at the end of
each subtest run.
- RAMification invokes jsc with an environment variable that tells the shell
to wait for one character of input from stdin before exiting.
- The jsc shell also disables the bmalloc scavenger while waiting for input so the
vmmap we take from the python runner script represents the "footprint" score
of the benchmark. If the scavenger ran, it would end up releasing too much
memory for the vmmap to be useful.
- The python script runs a vmmap, and then communicates to the jsc process
when the vmmap finishes running.
- JetStream2/RAMification.py:
(parseArgs):
(BaseRunner.init):
(BaseRunner.getResults):
(LocalRunner.runOneTest):
(main):
(main.runTestList):
Source/bmalloc:
- bmalloc/Scavenger.cpp:
(bmalloc::Scavenger::scavenge):
(bmalloc::Scavenger::partialScavenge):
- bmalloc/Scavenger.h:
(bmalloc::Scavenger::disable):
- bmalloc/bmalloc.cpp:
(bmalloc::api::disableScavenger):
- bmalloc/bmalloc.h:
Source/JavaScriptCore:
- jsc.cpp:
(main):
Source/WTF:
- wtf/FastMalloc.cpp:
(WTF::fastDisableScavenger):
- wtf/FastMalloc.h:
- 11:40 AM Changeset in webkit [259651] by
-
- 4 edits2 adds in trunk
documentFragment.getElementById() should not work for empty-string IDs
https://bugs.webkit.org/show_bug.cgi?id=210111
Reviewed by Geoffrey Garen.
LayoutTests/imported/w3c:
Import test coverage from upstream WPT.
- web-platform-tests/dom/nodes/DocumentFragment-getElementById-expected.txt: Added.
- web-platform-tests/dom/nodes/DocumentFragment-getElementById.html: Added.
Source/WebCore:
Make sure that getElementById() returns null when given an empty string ID:
Test: imported/w3c/web-platform-tests/dom/nodes/DocumentFragment-getElementById.html
- dom/DocumentFragment.cpp:
(WebCore::DocumentFragment::getElementById const):
- dom/TreeScope.cpp:
(WebCore::TreeScope::getElementById const):
- 11:37 AM Changeset in webkit [259650] by
-
- 4 edits in trunk
WKUserScripts deferred from injection are not injected if -[WKWebView _notifyUserScripts] is called early.
https://bugs.webkit.org/show_bug.cgi?id=210131
rdar://problem/61368446
Reviewed by Brady Eidson.
Source/WebCore:
If Page::notifyToInjectUserScripts() is called early, before Frame::injectUserScripts() happens,
m_hasBeenNotifiedToInjectUserScripts will be false, allowing scripts to build up in m_userScriptsAwaitingNotification
and never being injected (since Page::notifyToInjectUserScripts() will not be called again).
- page/Page.cpp:
(WebCore::Page::notifyToInjectUserScripts): Set m_hasBeenNotifiedToInjectUserScripts to true when called.
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
(TEST):
- 11:19 AM Changeset in webkit [259649] by
-
- 2 edits in trunk/Source/WebCore
Web Inspector: unable to see cookies on pages that have subframes which have been denied access to cookies
https://bugs.webkit.org/show_bug.cgi?id=210125
<rdar://problem/61357992>
Reviewed by Timothy Hatcher.
Previously, the same boolean value was re-used when checking whether that URL and
document
pairs is able to access cookies, meaning that if the last check returnedfalse
, the logic
would incorrectly think that none of the URL anddocument
pairs would have access to any
cookies, resulting in an empty array.
Instead of using this all-or-nothing boolean, if a URL and
document
pair is not able to
access cookies, simply ignore it and move on to the next pair.
- inspector/agents/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::getCookies):
- 11:18 AM Changeset in webkit [259648] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Add message to message filter in the WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=210130
Reviewed by Brent Fulgham.
Add a required syscall-mach message to the message filter in the WebContent sandbox on iOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 11:10 AM Changeset in webkit [259647] by
-
- 4 edits in trunk
TextManipulationController fails to replace a paragraph that ends with a br
https://bugs.webkit.org/show_bug.cgi?id=210099
Reviewed by Wenson Hsieh.
Source/WebCore:
The bug was caused by TextManipulationController::replace not ignoring the br at the end of a paragraph
even through it doesn't appear as a token. We also need to insert this br back at the end of the paragraph
when completing the manipulation.
- editing/TextManipulationController.cpp:
(WebCore::TextManipulationController::replace):
Tools:
Added regression tests.
- TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TextManipulation.CompleteTextManipulationReplaceMultipleSimpleParagraphsSeparatedByBR):
(TextManipulation.CompleteTextManipulationReplaceParagraphsSeparatedByWrappedBR):
(TextManipulation.CompleteTextManipulationFailWhenBRIsInserted):
- 11:04 AM Changeset in webkit [259646] by
-
- 8 edits1 add in trunk
[JSC] ScopedArgumentsTable should handle OOM in tolerant manner
https://bugs.webkit.org/show_bug.cgi?id=210126
Reviewed by Mark Lam.
JSTests:
- stress/scoped-arguments-table-should-be-tolerant-for-oom.js: Added.
(canThrow):
(bar):
(get bar):
(foo):
(i.canThrow):
Source/JavaScriptCore:
This patch makes ScopedArgumentsTable allocations OOM tolerant to throw OOM error when allocation fails.
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::BytecodeGenerator):
- runtime/CachedTypes.cpp:
(JSC::CachedScopedArgumentsTable::decode const):
- runtime/ScopedArguments.cpp:
(JSC::ScopedArguments::unmapArgument):
- runtime/ScopedArgumentsTable.cpp:
(JSC::ScopedArgumentsTable::tryClone):
(JSC::ScopedArgumentsTable::trySetLength):
(JSC::ScopedArgumentsTable::trySet):
(JSC::ScopedArgumentsTable::clone): Deleted.
(JSC::ScopedArgumentsTable::setLength): Deleted.
(JSC::ScopedArgumentsTable::set): Deleted.
- runtime/ScopedArgumentsTable.h:
- runtime/SymbolTable.h:
- 10:39 AM Changeset in webkit [259645] by
-
- 15 edits in trunk/Source/JavaScriptCore
[JSC] JSWrapperObject should use JSInternalFieldObjectImpl
https://bugs.webkit.org/show_bug.cgi?id=210019
Reviewed by Mark Lam.
JSWrapperObject's mechanism can be basically implemented by using JSInternalFieldObjectImpl.
We should leverage JSInternalFieldObjectImpl to implement JSWrapperObject since it can pave
the way to implementing Object-Allocation-Sinking and faster access to value etc. in DFG without
duplicating code.
We also noticed that we are storing classInfo to JSWrapperObject when allocating StringObject in
DFG and FTL while JSWrapperObject is no longer inheriting JSDestructibleObject! But it turned out
that this is safe since the subsequent JSWrapperObject::internalValue setting can overwrite it.
We remove this wrong store.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileNewStringObject):
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::emitAllocateDestructibleObject): Deleted.
- ftl/FTLAbstractHeapRepository.cpp:
(JSC::FTL::AbstractHeapRepository::AbstractHeapRepository):
- ftl/FTLAbstractHeapRepository.h:
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileNewStringObject):
(JSC::FTL::DFG::LowerDFGToB3::compileToStringOrCallStringConstructorOrStringValueOf):
- jit/AssemblyHelpers.h:
(JSC::AssemblyHelpers::emitAllocateDestructibleObject): Deleted.
- runtime/BigIntObject.h:
- runtime/BooleanObject.h:
- runtime/JSDestructibleObject.h:
(JSC::JSDestructibleObject::classInfo const):
(JSC::JSDestructibleObject::classInfoOffset): Deleted.
- runtime/JSWrapperObject.cpp:
(JSC::JSWrapperObject::visitChildren):
- runtime/JSWrapperObject.h:
(JSC::JSWrapperObject::internalValueOffset):
(JSC::JSWrapperObject::internalValue const):
(JSC::JSWrapperObject::setInternalValue):
(JSC::JSWrapperObject::createStructure): Deleted.
- runtime/NumberObject.h:
- runtime/StringObject.h:
- runtime/SymbolObject.h:
- 10:26 AM Changeset in webkit [259644] by
-
- 2 edits in trunk/Source/WebCore
Make sure playback of remote audio tracks is stable even if pages are using webaudio
https://bugs.webkit.org/show_bug.cgi?id=210052
Reviewed by Eric Carlson.
If a client requests data from AudioSampleDataSource, and the time requested happens to land
precicely on the end of the AudioSampleDataSoure's CARingBuffer's range, the function will get
into an inconsistent state where it believes both that not enough samples are available to
fulfill the request, but also that the number of frames available is equal to the number of
requested frames. This is due to an off-by-one error, where the end of the CARingBuffer's range
is incorrectly treated as inclusive, rather than exclusive. All subsequent requests will start at
sampleCount + timestamp, as if that data was returned correctly, rather than returning zeros,
propogating the error to future requests.
Fix this state by correctly checking if timestamp is greater-than-or-equal-to endFrame. This will
cause the method to return zero frames, and correctly apply an offset so the next request will start
at the same effective timestamp.
- platform/audio/mac/AudioSampleDataSource.mm:
(WebCore::AudioSampleDataSource::pullSamplesInternal):
- 9:38 AM Changeset in webkit [259643] by
-
- 2 edits in trunk/Source/WebCore
[GStreamer] Log a warning if playbin is not found
https://bugs.webkit.org/show_bug.cgi?id=210112
Reviewed by Philippe Normand.
I spent quite a bit of time looking in the debugger for what ended up
being a trivial configuration issue because there was no logging
showing any obvious problem. Let's add it.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::isAvailable):
- 9:29 AM Changeset in webkit [259642] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=210118
Unreviewed gardening.
Add more tests failing in EWS gtk-wk2 bot but not in test bot.
- platform/gtk/TestExpectations:
- 9:25 AM Changeset in webkit [259641] by
-
- 11 edits1 add2 deletes in trunk
[GTK] CMake find module for GTK4
https://bugs.webkit.org/show_bug.cgi?id=210110
Reviewed by Don Olmstead.
.:
Rename FindGTK3.cmake as FindGTK.cmake, make it provide a GTK::GTK imported target,
and rewrite the logic to detect which targets (backends) have been built into GTK
to use the "targets" pkg-config variable instead of checking for multiple pkg-config
modules.
- Source/cmake/FindGDK3.cmake: Removed.
- Source/cmake/FindGTK.cmake: Added.
- Source/cmake/FindGTK3.cmake: Removed. This is now unused because the GTK::GTK target
will transitively depend on GDK3 when using GTK3 and bring in the compiler and linker
options automatically without needing to use a separate find module for GDK.
- Source/cmake/OptionsGTK.cmake: Use the GTK::GTK imported target, change variables
prefixed with GTK3_ to use the GTK_ prefix, and remove variables which are not needed
anymore when using the target (GTK_LIBRARIES, GTK_INCLUDE_DIRS, GDK_LIBRARIES and
GDK_INCLUDE_DIRS).
Source/WebCore:
No new tests needed.
- PlatformGTK.cmake: Use the GTK::GTK imported target.
Source/WebCore/PAL:
- pal/PlatformGTK.cmake: Use the GTK::GTK imported target.
Tools:
- MiniBrowser/gtk/CMakeLists.txt: Use the GTK::GTK imported target.
- TestWebKitAPI/PlatformGTK.cmake: Ditto.
- TestWebKitAPI/glib/PlatformGTK.cmake: Ditto.
- WebKitTestRunner/PlatformGTK.cmake: Ditto.
- 9:09 AM Changeset in webkit [259640] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION (r259383-259384): ASSERTION FAILED: 'Completion handler should always be called' seen with http/wpt/service-workers/service-worker-different-process.https.html
https://bugs.webkit.org/show_bug.cgi?id=209977
Reviewed by Chris Dumez.
- UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::~AuxiliaryProcessProxy):
In case AuxiliaryProcessProxy has some enqueued messages but process crashes on launch for instance,
we should call the completion handlers and fail.
- 9:09 AM Changeset in webkit [259639] by
-
- 2 edits in trunk/LayoutTests
[GTK] Gardening, IndexedDB flaky failures
https://bugs.webkit.org/show_bug.cgi?id=210116
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 9:04 AM Changeset in webkit [259638] by
-
- 9 edits1 add in trunk
[JSC] Inlined IC should get right JSGlobalObject
https://bugs.webkit.org/show_bug.cgi?id=210092
Reviewed by Tadeu Zagallo.
JSTests:
- stress/getter-setter-globalobject-in-ic.js: Added.
(shouldBe):
(valueFunc):
(accessorFunc):
(valueTest):
(accessorTest):
Source/JavaScriptCore:
In DFG / FTL, CodeBlock in AccessCase is the DFG / FTL CodeBlock which includes all the inlined CodeBlocks.
If inlining happens with CodeBlock which has different JSGlobalObject, CodeBlock->globalObject() is different
to the actual lexical JSGlobalObject of the IC. So basically, we should not rely on codeBlock->globalObject() in IC.
This patch passes the correct lexical JSGlobalObject to IC to use. We do not retain this JSGlobalObject.
Since this is lexical JSGlobalObject of that IC, the owner CodeBlock of this IC should already retain it (even if this
JSGlobalObject is one of inlined CodeBlock since the owner CodeBlock retains inlined lower-tier CodeBlocks).
- bytecode/AccessCase.cpp:
(JSC::AccessCase::generateImpl):
- bytecode/PolymorphicAccess.cpp:
(JSC::PolymorphicAccess::regenerate):
- bytecode/PolymorphicAccess.h:
- bytecode/StructureStubInfo.cpp:
(JSC::StructureStubInfo::addAccessCase):
- bytecode/StructureStubInfo.h:
- jit/Repatch.cpp:
(JSC::tryCacheGetBy):
(JSC::tryCacheArrayGetByVal):
(JSC::tryCachePutByID):
(JSC::tryCacheDeleteBy):
(JSC::tryCacheInByID):
(JSC::tryCacheInstanceOf):
- tools/JSDollarVM.cpp:
- 9:00 AM Changeset in webkit [259637] by
-
- 3 edits in trunk/Source/WebKit
VisitedLinkStore.messages.in and VisitedLinkStore::addVisitedLinkHashFromPage() don't agree on type of
linkHash
<https://webkit.org/b/210094>
<rdar://problem/60334644>
Reviewed by Chris Dumez.
- Scripts/webkit/messages.py:
(types_that_cannot_be_forward_declared):
- Don't forward-declare WebCore::SharedStringHash as a class since it is a uint32_t.
- UIProcess/VisitedLinkStore.messages.in:
- Use WebCore::SharedStringHash type for
linkHash
to fix the type mismatch.
- 8:48 AM Changeset in webkit [259636] by
-
- 3 edits1 add in trunk
[JSC] $.evalScript should check exception when accessing "global"
https://bugs.webkit.org/show_bug.cgi?id=210114
<rdar://problem/61388482>
Reviewed by Keith Miller.
JSTests:
- stress/eval-script-global-access-exception-check.js: Added.
(shouldThrow):
Source/JavaScriptCore:
$.evalScript should check exception after "global" property access since it can throw an error if it is an accessor.
- jsc.cpp:
(functionDollarEvalScript):
- 8:23 AM Changeset in webkit [259635] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed, drop bad assertion introduced in r259610.
On some bots (in particular OpenSource iOS ones), we are unable to take the assertion
so this assertion does not hold true.
- UIProcess/ios/ProcessAssertionIOS.mm:
(WebKit::ProcessAssertion::ProcessAssertion):
- 7:16 AM Changeset in webkit [259634] by
-
- 2 edits in trunk/Tools
Reset mock capture devices between layout tests
https://bugs.webkit.org/show_bug.cgi?id=210098
Reviewed by Eric Carlson.
This fixes fast/mediastream/anonymize-device-name.html
failure since https://trac.webkit.org/changeset/259477/webkit.
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
- 7:04 AM EnvironmentVariables edited by
- (diff)
- 4:52 AM Changeset in webkit [259633] by
-
- 3 edits in trunk/Source/WebCore
Initialization of modal nodes should happen lazily, not in the AXObjectCache constructor.
https://bugs.webkit.org/show_bug.cgi?id=210090
Reviewed by Chris Fleizach.
- The initialization of modal nodes was performed in the AXObjectCache
constructor, which is not necessary. Instead, this change performs the
initialization of the modal nodes before they are needed.
- updateCurrentModalNode was replaced with currentModalNode, and its
implementation cleaned up.
- Now the initialization and update of AXObjectCached::m_modalNodesSet
and m_currentMOdalNode is clearer.
- accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::AXObjectCache):
(WebCore::AXObjectCache::findModalNodes):
(WebCore::AXObjectCache::currentModalNode const):
(WebCore::AXObjectCache::modalNode):
(WebCore::AXObjectCache::handleModalChange):
(WebCore::AXObjectCache::updateCurrentModalNode): Renamed currentModalNode.
- accessibility/AXObjectCache.h:
- 4:14 AM Changeset in webkit [259632] by
-
- 3 edits in trunk/Source/WebCore
Remove unnecessary memory allocation from RealtimeIncomingAudioSourceCocoa::OnData
https://bugs.webkit.org/show_bug.cgi?id=209969
Reviewed by Eric Carlson.
Instead of allocating a new buffer for every audio chunk and copy the audio chunk,
Create a WebAudioBufferList once (without any buffer allocation) and set the audio buffer pointer
given by libwebrtc as the WebAudioBufferList buffer pointer.
We do not take care of muted state anymore since this is done by consumers anyway.
Covered by existing tests.
- platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp:
(WebCore::RealtimeIncomingAudioSourceCocoa::OnData):
- platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.h:
- 2:47 AM Changeset in webkit [259631] by
-
- 3 edits in trunk/Source/WebCore
[GTK] gtk_icon_info_free is deprecated since GTK+ 3.8
https://bugs.webkit.org/show_bug.cgi?id=118381
Reviewed by Carlos Garcia Campos.
GtkIconInfo is a GObject since 3.8, update accordingly.
- platform/graphics/gtk/ImageGtk.cpp:
(WebCore::loadMissingImageIconFromTheme):
- platform/gtk/GUniquePtrGtk.h:
- 1:25 AM Changeset in webkit [259630] by
-
- 3 edits in trunk/Source/WebCore
Add release asserts to KeyframeEffectStack::ensureEffectsAreSorted()
https://bugs.webkit.org/show_bug.cgi?id=210084
<rdar://problem/61359275>
Reviewed by Ryosuke Niwa.
To ensure any potential problems in KeyframeEffectStack::ensureEffectsAreSorted() are found closer to the
root cause, add several RELEASE_ASSERTs throughout this function (and its associated comparison function).
This should guard against null pointers/null WeakPtrs, as well as other state problems which would be
unexpected for the comparison function used by std::sort.
No new tests; this only adds additional asserts, so there is no change to functionality, and this code is
covered by existing tests.
- animation/KeyframeEffectStack.cpp:
(WebCore::KeyframeEffectStack::ensureEffectsAreSorted):
- animation/WebAnimationUtilities.cpp:
(WebCore::compareAnimationsByCompositeOrder):
- 12:55 AM Changeset in webkit [259629] by
-
- 5 edits in trunk/Source
Use GlobalFrameIdentifier in NavigationAction
https://bugs.webkit.org/show_bug.cgi?id=210036
Patch by Rob Buis <rbuis@igalia.com> on 2020-04-07
Reviewed by Darin Adler.
Source/WebCore:
Use GlobalFrameIdentifier in NavigationAction rather than adding
yet another custom data type.
- loader/NavigationAction.cpp:
(WebCore::createGlobalFrameIdentifier):
(WebCore::m_globalFrameIdentifier):
- loader/NavigationAction.h:
(WebCore::NavigationAction::Requester::globalFrameIdentifier const):
(WebCore::NavigationAction::Requester::pageID const): Deleted.
(WebCore::NavigationAction::Requester::frameID const): Deleted.
Source/WebKit:
Adapt to API change.
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
- 12:17 AM Changeset in webkit [259628] by
-
- 1 copy in tags/Safari-610.1.8.3
Tag Safari-610.1.8.3.
- 12:01 AM Changeset in webkit [259627] by
-
- 8 edits in branches/safari-610.1.8-branch/Source
Versioning.