Timeline



May 18, 2020:

11:18 PM Changeset in webkit [261852] by Peng Liu
  • 2 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

Add an explicit timeout in the test to debug the flaky timeout.

Unreviewed test gardening.

  • media/modern-media-controls/tracks-support/tracks-support-show-panel-fullscreen.html:
11:10 PM Changeset in webkit [261851] by zandobersek@gmail.com
  • 8 edits in trunk/Tools

[WPE] HeadlessViewBackend should exclusively use software rasterization mode
https://bugs.webkit.org/show_bug.cgi?id=211982

Reviewed by Carlos Garcia Campos.

Instead of using WPEBackend-fdo's EGL mode that optionally allows the
GL operations to be done through software rasterization, have the
HeadlessViewBackend use the SHM mode which enforces this behavior.

Under the hood, the graphics library will be forced to set up and use
the software rasterization mechanisms, and on our side we are required
to properly handle SHM-backed buffers. This avoids any use of EGL or
GL operations inside HeadlessViewBackend, enabling to use this setup
in systems and environments that don't have GPUs available.

All GL-y things are pushed into the WindowViewBackend class. Inside
HeadlessViewBackend, the whole SHM logic requires WPEBackend-fdo APIs
that are part of the current 1.7 development cycle. When building
against older versions, HeadlessViewBackend itself remains buildable
but is not operational otherwise.

  • WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:

(WTR::PlatformWebView::windowSnapshotImage):

  • wpe/backends/HeadlessViewBackend.cpp:

(WPEToolingBackends::HeadlessInstance::singleton):
(WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend):
(WPEToolingBackends::HeadlessViewBackend::~HeadlessViewBackend):
(WPEToolingBackends::HeadlessViewBackend::backend const):
(WPEToolingBackends::HeadlessViewBackend::snapshot):
(WPEToolingBackends::HeadlessViewBackend::updateSnapshot):
(WPEToolingBackends::HeadlessViewBackend::vsync):
(): Deleted.
(WPEToolingBackends::HeadlessEGLConnection::singleton): Deleted.
(WPEToolingBackends::HeadlessViewBackend::createSnapshot): Deleted.
(WPEToolingBackends::HeadlessViewBackend::createEGLSnapshot): Deleted.
(WPEToolingBackends::HeadlessViewBackend::createSHMSnapshot): Deleted.
(WPEToolingBackends::HeadlessViewBackend::performUpdate): Deleted.
(WPEToolingBackends::HeadlessViewBackend::displayBuffer): Deleted.

  • wpe/backends/HeadlessViewBackend.h:
  • wpe/backends/ViewBackend.cpp:

(WPEToolingBackends::ViewBackend::initialize): Deleted.
(WPEToolingBackends::ViewBackend::deinitialize): Deleted.
(WPEToolingBackends::ViewBackend::backend const): Deleted.

  • wpe/backends/ViewBackend.h:
  • wpe/backends/WindowViewBackend.cpp:

(WPEToolingBackends::WindowViewBackend::backend const):
(WPEToolingBackends::WindowViewBackend::initialize):
(WPEToolingBackends::WindowViewBackend::deinitialize):

  • wpe/backends/WindowViewBackend.h:
11:08 PM Changeset in webkit [261850] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[WPE] Disable modern media controls for testing
https://bugs.webkit.org/show_bug.cgi?id=212023

Reviewed by Philippe Normand.

  • WebKitTestRunner/wpe/TestControllerWPE.cpp:

(WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
Since using the same Adwaita-based media controls as the GTK port, WPE
too should disable modern media controls during testing by overriding
the default value. This fixes a couple of obscure crashes in text track
tests.

10:09 PM Changeset in webkit [261849] by Simon Fraser
  • 11 edits in trunk/Source/WebCore

Move some of the more chatty Scrolling logging to a ScrollingTree channel
https://bugs.webkit.org/show_bug.cgi?id=212061

Reviewed by Tim Horton.

Move logging about the scrolling tree to a new channel.

  • page/FrameView.cpp:

(WebCore::FrameView::scrollToFragmentInternal):
(WebCore::FrameView::scrollToAnchor):

  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::createNode):
(WebCore::AsyncScrollingCoordinator::insertNode):

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::createUnparentedNode):
(WebCore::ScrollingStateTree::insertNode):
(WebCore::ScrollingStateTree::unparentNode):
(WebCore::ScrollingStateTree::unparentChildrenAndDestroyNode):
(WebCore::ScrollingStateTree::detachAndDestroySubtree):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::commitTreeState):

  • page/scrolling/ScrollingTreeScrollingNode.cpp:

(WebCore::ScrollingTreeScrollingNode::scrollTo):

  • page/scrolling/ThreadedScrollingTree.cpp:

(WebCore::ThreadedScrollingTree::scrollingTreeNodeDidScroll):

  • page/scrolling/cocoa/ScrollingTreeOverflowScrollProxyNode.mm:

(WebCore::ScrollingTreeOverflowScrollProxyNode::applyLayerPositions):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::commitTreeStateIfNeeded):

  • platform/Logging.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::attachScrollingNode):

9:59 PM Changeset in webkit [261848] by ddkilzer@apple.com
  • 19 edits in trunk/Source

Replace TextIndicatorOptions with OptionSet<TextIndicatorOption>
<https://webkit.org/b/212051>
<rdar://problem/63368556>

Reviewed by Simon Fraser.

Use OptionSet<TextIndicatorOption> everywhere
TextIndicatorOptions was previously used, plus:

  • Make TextIndicatorOption an enum class. Remove "TextIndicatorOption" prefix so TextIndicatorOptionBar becomes TextIndicatorOption::Bar.
  • Remove TextIndicatorOptionDefault because OptionSet<> initializes to zero.
  • Replace static variables (including two globals in WebCore) with constexpr variables.

Source/WebCore:

  • page/TextIndicator.cpp:

(WebCore::TextIndicator::createWithRange):
(WebCore::TextIndicator::createWithSelectionInFrame):
(WebCore::snapshotOptionsForTextIndicatorOptions):
(WebCore::takeSnapshots):
(WebCore::hasAnyIllegibleColors):
(WebCore::initializeIndicator):

  • page/TextIndicator.h:
  • platform/ios/DragImageIOS.mm:

(WebCore::createDragImageForLink):
(WebCore::createDragImageForSelection):
(WebCore::createDragImageForRange):

  • testing/Internals.h:

Source/WebKit:

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<TextIndicatorData>::encode):
(IPC::ArgumentCoder<TextIndicatorData>::decode):

  • WebProcess/WebPage/Cocoa/WebPageCocoa.mm:

(WebKit::WebPage::dictionaryPopupInfoForRange):

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::updateFindIndicator):

  • WebProcess/WebPage/ios/FindControllerIOS.mm:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::insertDroppedImagePlaceholders):
(WebKit::WebPage::computeAndSendEditDragSnapshot):
(WebKit::linkIndicatorPositionInformation):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::performImmediateActionHitTestAtLocation):

Source/WebKitLegacy/mac:

  • DOM/DOM.mm:

(-[DOMNode getPreviewSnapshotImage:andRects:]):

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _lookUpInDictionaryFromMenu:]):

  • WebView/WebImmediateActionController.h:
  • WebView/WebImmediateActionController.mm:

(-[WebImmediateActionController _defaultAnimationController]):
(-[WebImmediateActionController _animationControllerForDataDetectedText]):
(-[WebImmediateActionController _animationControllerForDataDetectedLink]):
(+[WebImmediateActionController _dictionaryPopupInfoForRange:inFrame:withLookupOptions:indicatorOptions:transition:]):
(-[WebImmediateActionController _animationControllerForText]):

  • WebView/WebView.mm:

(-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
(-[WebView _didConcludeEditDrag]):

9:24 PM Changeset in webkit [261847] by Peng Liu
  • 2 edits in trunk/Source/WebKitLegacy/mac

ASSERTION FAILED: media/modern-media-controls/media-controller/media-controller-resize.html crashes under stress tests
https://bugs.webkit.org/show_bug.cgi?id=212052

Reviewed by Jer Noble.

Not able to reproduce the crash locally. But it does happen under stress tests
on bots.

  • WebView/WebVideoFullscreenController.mm:

(-[WebVideoFullscreenController windowDidExitFullScreen:]):
Only call HTMLMediaElement::exitFullscreen() when the element is in fullscreen.

7:41 PM Changeset in webkit [261846] by chris.reid@sony.com
  • 4 edits in trunk/Tools

[WinCairo] WKTR WebsiteDataStore is being overwritten by the default one
https://bugs.webkit.org/show_bug.cgi?id=212044

Reviewed by Fujii Hironori.

Ensure TestController::defaultWebSiteDataStore is being used for WinCairo as done in r259705.

Also consolidate platformInitializeDataStore implementations with GTK/WPE since WinCairo WKTR
also started crashing since r261758.

  • WebKitTestRunner/TestController.cpp:
  • WebKitTestRunner/gtk/TestControllerGtk.cpp:
  • WebKitTestRunner/wpe/TestControllerWPE.cpp:
7:32 PM Changeset in webkit [261845] by aestes@apple.com
  • 21 edits in trunk

http/tests/ssl/applepay/ApplePayInstallmentConfiguration.https.html fails in public SDK builds
https://bugs.webkit.org/show_bug.cgi?id=212000
<rdar://problem/63323082>

Reviewed by Youenn Fablet.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • bindings/js/WebCoreBuiltinNames.h:

Source/WebCore/PAL:

  • Configurations/FeatureDefines.xcconfig:
  • pal/spi/cocoa/PassKitSPI.h:

Source/WebKit:

  • Configurations/FeatureDefines.xcconfig:
  • Shared/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.h:
  • Shared/WebCoreArgumentCoders.h:

Source/WebKitLegacy/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:

  • wtf/PlatformEnableCocoa.h:
  • wtf/PlatformHave.h:

Tools:

  • TestWebKitAPI/Configurations/FeatureDefines.xcconfig:

LayoutTests:

  • platform/mac-wk2/TestExpectations:
6:54 PM Changeset in webkit [261844] by commit-queue@webkit.org
  • 2 edits in trunk/Source/ThirdParty/ANGLE

Enable regenerateStructNames workaround on iOS
https://bugs.webkit.org/show_bug.cgi?id=212056

Patch by James Darpinian <James Darpinian> on 2020-05-18
Reviewed by Dean Jackson.

The WebGL conformance test conformance/glsl/misc/shader-struct-scope.html
was failing on iOS. The workaround that fixes this test was enabled only on
desktop GL, but it's necessary for iOS as well.

  • src/libANGLE/renderer/gl/renderergl_utils.cpp:

(rx::nativegl_gl::InitializeFeatures):

6:48 PM Changeset in webkit [261843] by mmaxfield@apple.com
  • 18 edits
    2 adds in trunk

[WebGPU] Validation for GPUDevice.createTexture()
https://bugs.webkit.org/show_bug.cgi?id=211882
<rdar://problem/63215999>

Reviewed by Dean Jackson.

Source/WebCore:

Add lots of validation for texture creation. The logic was gathered by
trial and error.

Before this patch, we didn't have any validation. This is a first pass, as
the validation logic isn't spelled out in the spec. Next, I will make a pull
request to the spec to match this patch.

This patch also updates three pieces of our IDL files to match the spec for
WebGPU: One to remove GPUTextureUsage.NONE which was replaced with just 0,
one to remove GPUTextureDescriptor.arrayLayerCount, which was deleted in
favor of using regular dimension fields, and one to add [EnforceRange] to
various values.

This patch also updates GPUDevice to have a GPUErrorScopes object, which is
required for good error messages.

Test: webgpu/texture-creation.html

  • Modules/webgpu/GPUExtent3D.idl:
  • Modules/webgpu/GPUTextureDescriptor.idl:
  • Modules/webgpu/WebGPUDevice.cpp:

(WebCore::WebGPUDevice::tryCreate):
(WebCore::WebGPUDevice::createTexture const):

  • Modules/webgpu/WebGPUDevice.h:
  • platform/graphics/gpu/GPUDevice.cpp:

(WebCore::maximumMipLevelCount):
(WebCore::GPUDevice::tryCreateTexture const):

  • platform/graphics/gpu/GPUDevice.h:

(WebCore::GPUDevice::setErrorScopes):

  • platform/graphics/gpu/GPUExtent3D.h:
  • platform/graphics/gpu/GPUObjectBase.h:

(WebCore::GPUObjectBase::errorScopes const):
(WebCore::GPUObjectBase::errorScopes): Deleted.

  • platform/graphics/gpu/GPUTexture.h:
  • platform/graphics/gpu/GPUTextureDescriptor.h:
  • platform/graphics/gpu/cocoa/GPUTextureMetal.mm:

(WebCore::mtlTextureTypeForGPUTextureDescriptor):
(WebCore::mtlTextureUsageForGPUTextureUsageFlags):
(WebCore::tryCreateMtlTextureDescriptor):
(WebCore::GPUTexture::tryCreate):

LayoutTests:

6:17 PM Changeset in webkit [261842] by sbarati@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Do more speculation that a GetByVal/PutByVal will have an int32 index based on data from ArrayProfile
https://bugs.webkit.org/show_bug.cgi?id=211877

Reviewed by Yusuke Suzuki.

Before this patch, when a GetByVal or PutByVal had a non int32 prediction for
their incoming index, they'd fall completely off the fast path. However, there
are programs where an int32 is boxed inside a double, but our notion of
predicted types don't fully capture this fact. For example, if we have a double Add
to produce an array index, that double Add will predict a full double result,
not a SpecAnyIntAsDouble. However, for GetByVal and PutByVal, there is information
from ArrayProfile we can use to determine if the incoming value is expected to
be in int32 range. The heuristic this patch introduces is:

isFullNumberSpeculation(indexSpeculation)
&& node->arrayMode().isSpecific()
&& node->arrayMode().isInBounds()
&& !m_graph.hasExitSite(node->origin.semantic, Overflow) DoubleAsInt32 will exit with Overflow on failure

If these conditions are met, we'll now emit a DoubleAsInt32 conversion node
for the index. This puts along the fast path for GetByVal and PutByVal on
array accesses where the incoming index is an int32 boxed in a double.

To make the above isFullNumberSpeculation check more robust, this patch also
makes it so non index double accesses result in marking the array profile as
out of bounds. So this means indices greater than max safe index, and also,
fractional doubles.

This is a 3.75x speedup on microbenchmarks/get-and-put-by-val-double-index-dont-fall-off-a-cliff.js

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • jit/JITOperations.cpp:

(JSC::getByVal):

5:52 PM Changeset in webkit [261841] by Oriol Brufau
  • 18 edits
    50 adds in trunk

[css-grid] Clear the override width for computing percent margins
https://bugs.webkit.org/show_bug.cgi?id=209461

Reviewed by Manuel Rego Casasnovas.

LayoutTests/imported/w3c:

Import new WPT tests and update existing ones.

  • web-platform-tests/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages-expected.txt:
  • web-platform-tests/css/css-grid/grid-items/grid-item-dynamic-min-contribution-001-expected.txt: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-item-dynamic-min-contribution-001.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-001.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-002.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-003-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-003.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-004-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-004.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-005-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-005.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-006-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-006.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-007-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-007.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-008-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-008.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-009-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-009.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-010-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-010.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-011-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-011.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-012-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-012.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-013-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-013.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-014-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-014.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-001.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-lr-002.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-001.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-vertical-rl-002.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-001.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-002.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-003-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-003.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-004-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-004.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-005-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-005.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-006-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-006.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-007-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-007.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-008-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-008.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-009-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-009.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-010-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-010.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-011-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-011.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-012-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-012.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-013-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-013.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-014-expected.xht: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-014.html: Added.
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-001.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html:
  • web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html:
  • web-platform-tests/css/css-grid/grid-items/w3c-import.log:

Source/WebCore:

When calculating the min-content contribution of a grid item of an auto
sized grid track we must consider the grid item's margin. When the grid
item's area is indefinite, a percent margin is resolved to zero.
However, when performing a relayout, the percent margin may be solved
against the previously computed grid area, since the grid item has
already an OverrideContainingBlockLogicalWidth value.

In order to re-compute the percent margin properly, we need to clear
the previously override value. It's important to be careful of not
clearing the override value set during intrinsic size, since we need
it for the actual layout phase. Hence, we only reset the 'override'
value when we are executing a definite strategy.

Tests: imported/w3c/web-platform-tests/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages.html

imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-item-dynamic-min-contribution-001.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-003.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-004.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-005.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-006.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-007.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-008.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-009.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-010.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-011.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-012.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-013.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-margins-014.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-003.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-004.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-005.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-006.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-007.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-008.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-009.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-010.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-011.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-012.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-013.html
imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-014.html

  • rendering/GridTrackSizingAlgorithm.cpp:

(WebCore::hasRelativeMarginOrPaddingForChild):
(WebCore::hasRelativeOrIntrinsicSizeForChild):
(WebCore::shouldClearOverrideContainingBlockContentSizeForChild):
(WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const):
(WebCore::GridTrackSizingAlgorithmStrategy::minLogicalSizeForChild const):
(WebCore::DefiniteSizeStrategy::minLogicalSizeForChild const):
(WebCore::DefiniteSizeStrategy::minContentForChild const):

  • rendering/GridTrackSizingAlgorithm.h:
4:48 PM Changeset in webkit [261840] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Follow-up: Use default initializers in TextIndicatorData
<https://webkit.org/b/212039>
<rdar://problem/63355619>

  • page/TextIndicator.h:

(WebCore::TextIndicatorData::contentImageScaleFactor):

  • Simon Fraser says 1 is a better default than 0.
4:40 PM Changeset in webkit [261839] by Peng Liu
  • 4 edits in trunk/Source/WebCore

Add a quirk to allow an embedded Twitter video to play with one tapping
https://bugs.webkit.org/show_bug.cgi?id=211932

Reviewed by Maciej Stachowiak.

  • html/MediaElementSession.cpp:

(WebCore::MediaElementSession::playbackPermitted const):
Need to check the topDocument for the existence of user interactions.
(WebCore::MediaElementSession::updateMediaUsageIfChanged): Ditto.

  • page/Quirks.cpp:

(WebCore::Quirks::needsPerDocumentAutoplayBehavior const):
Add the missing needsQuirks() checking.
(WebCore::Quirks::shouldAutoplayForArbitraryUserGesture const):
Add a the quirk for twitter.com.

  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::sessionWillBeginPlayback):
Clarify the log message.

4:31 PM Changeset in webkit [261838] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit

Rare crash under -[WKContentView resignFirstResponderForWebView]
https://bugs.webkit.org/show_bug.cgi?id=212050
<rdar://problem/60187111>

Reviewed by Wenson Hsieh.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView resignFirstResponderForWebView]):
Reorganize this block so that it always takes a strong reference /before/
null checking and using the pointer. Also, add a _page null check.
This is a speculative fix for an unreproducible low-rate crash.

In theory the existing time-of-check race here should not be a problem,
since WKWebView is supposed to be freed on the main thread, and this code
runs on the main thread, but we have ample evidence of WKWebView
being freed off the main thread in various clients.

4:10 PM Changeset in webkit [261837] by Simon Fraser
  • 4 edits
    4 adds in trunk

Content disappears on CSS parallax example
https://bugs.webkit.org/show_bug.cgi?id=212045
<rdar://problem/63194217>

Reviewed by Tim Horton.
Source/WebCore:

In r261632 I fixed parallax scrolling by migrating the perspective transform onto
the scroll container layer, and making the scrolled contents layer a "preserve3D" layer.

However, scrolling is achieved by changing the boundsOrigin of the scrolled contents layer,
so the computation of the perspective matrix, which is a "child layer transform", has to
take this boundsOrigin into account, otherwise we compute bad coverage rects, and drop
backing store erroneously.

Test: compositing/tiling/perspective-on-scroller-tile-coverage.html

  • platform/graphics/FloatPoint3D.h:

(WebCore::FloatPoint3D::FloatPoint3D):
(WebCore::FloatPoint3D::move):
(WebCore::operator +=):
(WebCore::operator -=):
(WebCore::operator+):
(WebCore::operator-):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::recursiveVisibleRectChangeRequiresFlush const):
(WebCore::GraphicsLayerCA::layerTransform const):
(WebCore::GraphicsLayerCA::adjustCoverageRect const):
(WebCore::GraphicsLayerCA::setVisibleAndCoverageRects):

LayoutTests:

  • compositing/tiling/perspective-on-scroller-tile-coverage-expected.txt: Added.
  • compositing/tiling/perspective-on-scroller-tile-coverage.html: Added.
3:50 PM Changeset in webkit [261836] by ddkilzer@apple.com
  • 4 edits in trunk/Source

Use default initializers in TextIndicatorData
<https://webkit.org/b/212039>
<rdar://problem/63355619>

Reviewed by Alex Christensen.

Source/WebCore:

Tested by IPC::Decoder::decode() and IPC::Encoder::operator<<()
running on WebKit2 API and layout tests.

  • page/TextIndicator.h:

(WebCore::TextIndicatorData):

  • Add default initializers.

(WTF::EnumTraits<WebCore::TextIndicatorPresentationTransition>):

  • Add EnumTraits so TextIndicatorPresentationTransition may be used by IPC::Decoder::decode() and IPC::Encoder::operator<<().

Source/WebKit:

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<TextIndicatorData>::encode):
(IPC::ArgumentCoder<TextIndicatorData>::decode):

  • Switch from decodeEnum() and encodeEnum() to modern equivalents that check for valid enum values.
3:29 PM Changeset in webkit [261835] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Fix operator== and hash() for ExtendedColor
https://bugs.webkit.org/show_bug.cgi?id=211993

Post-landing followup. ExtendedColor operator== has to do exact comparison to be
consistent with hash().

  • platform/graphics/ExtendedColor.h:

(WebCore::operator==):

3:26 PM Changeset in webkit [261834] by ysuzuki@apple.com
  • 4 edits
    1 add in trunk

[JSC] BigInt peephole compare should speculate appropriately
https://bugs.webkit.org/show_bug.cgi?id=212037
<rdar://problem/63346966>

Reviewed by Saam Barati.

JSTests:

  • stress/bigint-compare-peephole-branch.js: Added.

Source/JavaScriptCore:

SpeculativeJIT::nonSpeculativePeepholeBranch missed BigInt speculation. This patch renames it
to SpeculativeJIT::genericJSValuePeepholeBranch and adds speculation checks appropriately.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compilePeepHoleBranch):
(JSC::DFG::SpeculativeJIT::genericJSValuePeepholeBranch):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranch): Deleted.

  • dfg/DFGSpeculativeJIT.h:
3:22 PM Changeset in webkit [261833] by Wenson Hsieh
  • 16 edits in trunk

Replace uses of +self with +class
https://bugs.webkit.org/show_bug.cgi?id=212041

Reviewed by Darin Adler.

Source/WebCore:

No change in behavior.

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper _accessibilitySetValue:forAttribute:]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):

  • platform/graphics/ca/cocoa/PlatformCALayerCocoa.mm:

(WebCore::PlatformCALayer::isWebLayer):

Source/WebKit:

  • Shared/API/Cocoa/_WKFrameHandle.mm:

(-[_WKFrameHandle isEqual:]):
(-[_WKFrameHandle initWithCoder:]):

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject):

  • UIProcess/API/Cocoa/WKWebViewConfiguration.mm:

(-[WKWebViewConfiguration _setAttachmentFileWrapperClass:]):

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction):

  • UIProcess/Cocoa/PageClientImplCocoa.mm:

(WebKit::PageClientImplCocoa::allocFileWrapperInstance const):
(WebKit::PageClientImplCocoa::serializableFileWrapperClasses const):

  • UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.mm:

(+[WKTransformView layerClass]):
(+[WKSimpleBackdropView layerClass]): Deleted.
(+[WKShapeView layerClass]): Deleted.
(-[WKRemoteView initWithFrame:contextID:]): Deleted.

  • UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.mm:

(WebKit::ScrollingTreeScrollingNodeDelegateIOS::~ScrollingTreeScrollingNodeDelegateIOS):
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::resetScrollViewDelegate):
(WebKit::ScrollingTreeScrollingNodeDelegateIOS::scrollView const):

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView selectFormAccessoryPickerRow:]):
(-[WKContentView selectFormPopoverTitle]):

Tools:

  • DumpRenderTree/mac/EventSendingController.mm:

(-[EventSendingController monitorWheelEventsWithOptions:]):

  • TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:

(TestWebKitAPI::TEST):

  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:

(WTR::enclosingScrollViewIncludingSelf):

2:17 PM Changeset in webkit [261832] by Ross Kirsling
  • 9 edits in trunk/Source/WebCore

Unreviewed restabilization of non-unified build.

  • accessibility/AXObjectCache.cpp:
  • html/HTMLAttachmentElement.h:
  • inspector/agents/InspectorCSSAgent.cpp:
  • layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp:
  • layout/tableformatting/TableFormattingContextGeometry.cpp:
  • layout/tableformatting/TableFormattingState.cpp:
  • rendering/RenderTextFragment.h:
  • rendering/style/KeyframeList.h:
1:52 PM Changeset in webkit [261831] by Ryan Haddad
  • 3 edits in branches/safari-609-branch/Tools

Unreviewed test gardening for rdar://59610140 and rdar://59611168.

  • TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
  • TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
1:49 PM Changeset in webkit [261830] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Null Ptr Deref @ WebCore::CSSValue::classType
https://bugs.webkit.org/show_bug.cgi?id=212036

Patch by Pinki Gyanchandani <pgyanchandani@apple.com> on 2020-05-18
Reviewed by Geoffrey Garen.

Source/WebCore:

Calculated value for a primitive value type can be NULL for a CSS property. Added a null check before dereferencing it.

Test: editing/execCommand/null_calc_primitive_value_for_css_property.html

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::formatNumberForCustomCSSText const):

LayoutTests:

Added a regression test.

  • editing/execCommand/null_calc_primitive_value_for_css_property-expected.txt: Added.
  • editing/execCommand/null_calc_primitive_value_for_css_property.html: Added.
1:49 PM Changeset in webkit [261829] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit

WebPageProxy::DidCommitLoadForFrame should use FrameLoadType instead of casting to/from uint32_t for IPC
https://bugs.webkit.org/show_bug.cgi?id=212028
<rdar://problem/63343021>

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-18
Reviewed by David Kilzer.

  • UIProcess/ProvisionalPageProxy.cpp:

(WebKit::ProvisionalPageProxy::didCommitLoadForFrame):

  • UIProcess/ProvisionalPageProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::commitProvisionalPage):
(WebKit::WebPageProxy::didCommitLoadForFrame):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):

1:22 PM Changeset in webkit [261828] by Simon Fraser
  • 9 edits in trunk

Implement conversion between P3 and sRGB color
https://bugs.webkit.org/show_bug.cgi?id=211998

Reviewed by Daniel Bates.
Source/WebCore:

Color::toSRGBAComponentsLossy() was a lie because it didn't actually convert extended
colors into sRGB. Fix that by converting P3 and linaerRGB colors into sRGB, using the color
math from CSS Color 4.

Renamed the various "linear to sRGB" functions because they work for any RGB colors,
not just sRGB.

  • platform/graphics/Color.cpp:

(WebCore::Color::toSRGBAComponentsLossy const):

  • platform/graphics/Color.h:
  • platform/graphics/ColorUtilities.cpp:

(WebCore::linearToRGBColorComponent):
(WebCore::RGBToLinearColorComponent):
(WebCore::sRGBColorToLinearComponents):
(WebCore::RGBToLinearComponents):
(WebCore::linearToRGBComponents):
(WebCore::XYZToLinearSRGB):
(WebCore::linearSRGBToXYZ):
(WebCore::XYZToLinearP3):
(WebCore::linearP3ToXYZ):
(WebCore::P3ToSRGB):
(WebCore::sRGBToP3):
(WebCore::ColorMatrix::transformedColorComponents const):
(WebCore::linearToSRGBColorComponent): Deleted.
(WebCore::sRGBToLinearColorComponent): Deleted.
(WebCore::sRGBToLinearComponents): Deleted.
(WebCore::linearToSRGBComponents): Deleted.

  • platform/graphics/ColorUtilities.h:

Tools:

API test for conversions from P3 to sRGB, and linearRGB to sRGB. Values were confirmed
as close to those provided by ColorSync Utility.

  • TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:

(TestWebKitAPI::TEST):

1:17 PM Changeset in webkit [261827] by mark.lam@apple.com
  • 9 edits
    1 add in trunk

Implement a faster findBitInWord() using the hardware ctz instruction.
https://bugs.webkit.org/show_bug.cgi?id=212032
<rdar://problem/63348086>

Reviewed by Saam Barati.

Source/bmalloc:

Apply same changes to bmalloc's copy of findBitInWord().

  • bmalloc/Algorithm.h:

(bmalloc::ctz):
(bmalloc::findBitInWord):

Source/WTF:

Based on local microbenchmarking, both ARM64 and X86_64 shows a speed up of
28% - 95% faster than the loop.

The largest perf regressions for ctz vs the loop, are when finding 1 in a mostly
set word or finding 0 in a mostly cleared word. For example, on X86_64:

Find 1 in 0xffffffffffffffff: using loop 8.67 ms, using ctz 6.07 ms, delta 30.0%
Find 0 in 0x8000000000000000: using loop 9.01 ms, using ctz 6.54 ms, delta 28.1%

The largest perf progressions for ctz vs the loop, are the opposite: finding 1 in
a mostly cleared word, or finding a 0 in a mostly set word. For example, on X86_64:

Find 1 in 0x8000000000000000: using loop 91.4 ms, using ctz 6.48 ms, delta 92.9%
Find 0 in 0xffffffffffffffff: using loop 91.7 ms, using ctz 6.95 ms, delta 92.4%

TL;DR: the microbenchmark methodology used:

findBitInWord() takes:

  1. word to scan
  2. startIndex
  3. endIndex
  4. bool value to scan for, either 1 or 0.
  1. Randomly select 1000 startIndex and endIndex pairs. The endIndex is guaranteed to be >= startIndex.
  1. Using a base word of 0xffffffffffffffff (or uint64_t) and 0xffffffff (for uint32_t), shift left by 0 - N (where N is the number of bits in the word) to generate N + 1 words for the test. This produces words with contiguous lengths of 1s and 0s. We're choosing these words to deliberately measure the effects o run lengths of 0s or 1s on the algorithm in use.
  1. For each test word, call findBitInWord() with the start and end indexes chosen in 1 for a 100 iterations.
  1. Run (3) once to search for a true value, and once to search for a false value.
  1. Print the results for each test word and value pair.
  • wtf/BitVector.cpp:
  • wtf/Bitmap.h:
  • wtf/StdLibExtras.h:

(WTF::findBitInWord):

Tools:

Add tests to make sure that the ctz implementation matches the loop implementation
in behavior.

  • TestWebKitAPI/CMakeLists.txt:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/StdLibExtras.cpp: Added.

(TestWebKitAPI::testFindBitInWord):
(TestWebKitAPI::TEST):

12:11 PM Changeset in webkit [261826] by Lauro Moura
  • 3 edits
    1 move
    1 add
    1 delete in trunk/LayoutTests

[GTK][WPE] Rebaseline security/block-test-no-port.html

Since upstream libsoup commit e337a6f794 it uses soup-http-error-quark
GQuark as string for the error domain.

The error code 4 already maps to SOUP_STATUS_CANT_CONNECT which is the
correct counterpart to Mac's NSURLErrorCannotConnectToHost (-1004).

Unreviewed test gardening.

  • platform/glib/security/block-test-no-port-expected.txt: Renamed from LayoutTests/platform/wpe/security/block-test-no-port-expected.txt. and fixed error string.
  • platform/gtk/TestExpectations: Removed expected failure.
  • platform/gtk/security/block-test-no-port-expected.txt: Removed.
  • platform/wpe/TestExpectations: Removed expected failure.
12:05 PM Changeset in webkit [261825] by Wenson Hsieh
  • 15 edits
    2 adds in trunk

Allow clipboard API access when pasting from a menu item or key binding
https://bugs.webkit.org/show_bug.cgi?id=211990
<rdar://problem/63308916>

Reviewed by Megan Gardner.

Source/WebCore:

Allow the contents of the clipboard to be programmatically requested by the page while pasting from trusted UI
(i.e. the paste menu item, or when WebKit API is called by the app to trigger the paste). This allows the
'reading' part of the async clipboard API (read and readText) to be used when the user pastes in an editable
element, without having to fall back to showing the DOM paste access menu.

Note that this change should not have an effect on the pasteboard security model, since it only grants the page
programmatic access to the contents of the pasteboard in the case where access to the pasteboard has already
been granted by the user. Additionally, even in the event that the web process is compromised, even if the web
process can be tricked into believing it has been granted pasteboard access, the changes in r259151 will prevent
it from being able to request pasteboard data, unless the user (or the application, on behalf of the user) has
explicitly pasted via trusted API calls that are inaccessible from the web process.

Test: editing/async-clipboard/clipboard-read-while-pasting.html

  • editing/Editor.cpp:

(WebCore::Editor::paste):
(WebCore::Editor::pasteAsPlainText):
(WebCore::Editor::pasteAsQuotation):

If FromMenuOrKeyBinding::Yes is passed in, set the m_pastingFromMenuOrKeyBinding flag to true during the
scope of the paste command.

  • editing/Editor.h:

(WebCore::Editor::isPastingFromMenuOrKeyBinding const):

  • editing/EditorCommand.cpp:

(WebCore::executePaste):
(WebCore::executePasteAndMatchStyle):
(WebCore::executePasteAsPlainText):
(WebCore::executePasteAsQuotation):

Pass in FromMenuOrKeyBinding::Yes when triggering the paste from a menu item or key binding.

  • page/Frame.cpp:

(WebCore::Frame::requestDOMPasteAccess):

When pasting from menu or key binding, grant the page DOM paste access without requiring the DOM paste access
UI to be shown and confirmed.

Tools:

Add a UIScriptController method to trigger a paste from the application process.

  • DumpRenderTree/cocoa/UIScriptControllerCocoa.h:
  • DumpRenderTree/cocoa/UIScriptControllerCocoa.mm:

(WTR::UIScriptControllerCocoa::paste):

  • TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
  • TestRunnerShared/UIScriptContext/UIScriptController.h:

(WTR::UIScriptController::paste):

  • WebKitTestRunner/cocoa/UIScriptControllerCocoa.h:
  • WebKitTestRunner/cocoa/UIScriptControllerCocoa.mm:

(WTR::UIScriptControllerCocoa::paste):

LayoutTests:

Add a new layout test to verify that the contents of the clipboard can be read while performing a paste that was
not triggered from the DOM.

  • editing/async-clipboard/clipboard-read-while-pasting-expected.txt: Added.
  • editing/async-clipboard/clipboard-read-while-pasting.html: Added.
  • platform/win/TestExpectations:
  • resources/ui-helper.js:

(window.UIHelper.async copyText):
(window.UIHelper.async paste):

11:56 AM Changeset in webkit [261824] by keith_miller@apple.com
  • 3 edits
    1 add in trunk

OSR loop entry to iterator_next generic needs to CheckNotEmpty on m_next
https://bugs.webkit.org/show_bug.cgi?id=212001

Reviewed by Saam Barati.

JSTests:

  • stress/for-of-osr-loop-enter-active-next-differs-from-seen-modes.js: Added.

(foo):

Source/JavaScriptCore:

If we happen to OSR enter into iterator_next during a for-of loop
that has only profiled a generic iterator but is actually running
a fast iterator we will incorrectly perform the Call node This
could happen if we loop_hint OSR enter the first time have seen a
fast iterator. If this happens right now, we generate the following
code:

D@113:<!2:loc15> GetLocal(Check:Untyped:D@198, JS|MustGen|UseAsOther, Function|Empty, loc13(W~/FlushedJSValue), machine:loc10, R:Stack(loc13),Stack(loc5), bc#46, ExitValid) predicting Function|Empty

0x4913f1806151: mov -0x58(%rbp), %rsi

D@114:<!0:-> FilterCallLinkStatus(Check:Untyped:D@113, MustGen, (Function: Object: 0x1053f47e0 with butterfly 0x0 (Structure 0x1053f9260:[0x6dad, Function, {}, NonArray, Proto:0x1050fc248]), StructureID: 28077; Executable: next#Ddkruz:[0x1053c0480->0x1053e4a80, BaselineFunctionCall, 54 (StrictMode)]), R:Stack(loc5), W:SideState, bc#46, ExitValid)
D@115:<!6:loc15> Call(Check:Untyped:D@113, Check:Untyped:D@110, JS|MustGen|VarArgs|UseAsOther, Final, R:World,Stack(loc5), W:Heap, ExitsForExceptions, ClobbersExit, bc#46, ExitValid) predicting Final

0x4913f1806155: mov $0x1, 0x10(%rsp)
0x4913f180615d: mov %rax, 0x18(%rsp)
0x4913f1806162: mov %rsi, 0x8(%rsp)
0x4913f1806167: mov %rax, -0xa0(%rbp)
0x4913f180616e: mov $0x0, 0x24(%rbp)
0x4913f1806175: mov $0x0, %r11
0x4913f180617f: cmp %r11, %rsi
0x4913f1806182: jnz 0x4913f1806192
0x4913f1806188: call 0x4913f180618d
0x4913f180618d: jmp 0x4913f18061ae
0x4913f1806192: mov %rsi, %rax
0x4913f1806195: mov $0x1050cfcb0, %rdx
0x4913f180619f: mov $0x1052fab68, %rcx
0x4913f18061a9: call 0x4913f1801680
0x4913f18061ae: lea -0xd0(%rbp), %rsp

D@116:<!0:-> MovHint(Check:Untyped:D@115, MustGen, tmp0, R:Stack(loc5), W:SideState, ClobbersExit, bc#46, ExitInvalid)
D@332:<!0:-> InvalidationPoint(MustGen, R:Stack(loc5), W:SideState, Exits, bc#46, exit: bc#46cp#1, ExitValid)
D@335:<!0:-> CheckStructure(Check:Cell:D@115, MustGen, [%B2:Object], R:Stack(loc5),JSCell_structureID, Exits, bc#46, exit: bc#46cp#1, ExitValid)

0x4913f18061b5: test %rax, %r15
0x4913f18061b8: jnz 0x4913f18068db
0x4913f18061be: cmp $0xcaae, (%rax)
0x4913f18061c4: jnz 0x4913f18068f1

Loc13 in this IR is the location of the next function. Since it's
nullptr, we will pass the initial fast-path value of 0 and make a
garbage call. This is because Call does not know how to handle
empty values. Subsequently, we will fail a structure check for the
Call's result and OSR exit to the getDone checkpoint. The fix for
this is to simply put a CheckNotEmpty at the top of the generic
case. 99.9% of the time this check will be eliminated so it
doesn't really cost anything.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

11:36 AM Changeset in webkit [261823] by pvollan@apple.com
  • 2 edits in trunk/Source/WebCore

[Win] Fix AppleWin build
https://bugs.webkit.org/show_bug.cgi?id=212030

Reviewed by Brent Fulgham.

The build fails because the number of bitfields in GreaterThanOrSameSizeAsStyleRareInheritedData does not match the
actual number of bitfields in StyleRareInheritedData.

  • rendering/style/StyleRareInheritedData.cpp:
11:05 AM Changeset in webkit [261822] by Peng Liu
  • 3 edits in trunk/LayoutTests

REGRESSION (r261493?): media/video-isplayingtoautomotiveheadunit.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=211915

Reviewed by Daniel Bates.

Make the test more reliable by: 1) loop the video in test; 2) add event listeners
before operations; and 3) restore the internals before end of test.

  • media/video-isplayingtoautomotiveheadunit-expected.txt:
  • media/video-isplayingtoautomotiveheadunit.html:
10:52 AM Changeset in webkit [261821] by commit-queue@webkit.org
  • 29 edits
    2 copies
    2 moves
    16 adds
    3 deletes in trunk

Remove certain headers when a redirect causes a request method change
https://bugs.webkit.org/show_bug.cgi?id=205119

Patch by Rob Buis <rbuis@igalia.com> on 2020-05-18
Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

Sync fetch/api/redirect (ba2e4f92).

  • resources/import-expectations.json:
  • web-platform-tests/fetch/api/redirect/redirect-count.any.js:

(redirectCount):

  • web-platform-tests/fetch/api/redirect/redirect-empty-location.any.js:
  • web-platform-tests/fetch/api/redirect/redirect-location-escape.tentative.any-expected.txt: Added.
  • web-platform-tests/fetch/api/redirect/redirect-location-escape.tentative.any.html: Added.
  • web-platform-tests/fetch/api/redirect/redirect-location-escape.tentative.any.js: Added.

(redirectLocation):

  • web-platform-tests/fetch/api/redirect/redirect-location-escape.tentative.any.worker-expected.txt: Added.
  • web-platform-tests/fetch/api/redirect/redirect-location-escape.tentative.any.worker.html: Added.
  • web-platform-tests/fetch/api/redirect/redirect-location.any.js:

(redirectLocation):

  • web-platform-tests/fetch/api/redirect/redirect-method.any-expected.txt:
  • web-platform-tests/fetch/api/redirect/redirect-method.any.js:

(redirectMethod):

  • web-platform-tests/fetch/api/redirect/redirect-method.any.worker-expected.txt:
  • web-platform-tests/fetch/api/redirect/redirect-mode.any.js:

(testRedirect):

  • web-platform-tests/fetch/api/redirect/redirect-origin.any-expected.txt:
  • web-platform-tests/fetch/api/redirect/redirect-origin.any.js:

(testOriginAfterRedirection):

  • web-platform-tests/fetch/api/redirect/redirect-origin.any.worker-expected.txt:
  • web-platform-tests/fetch/api/redirect/redirect-referrer.any.js:
  • web-platform-tests/fetch/api/redirect/redirect-schemes.html:
  • web-platform-tests/fetch/api/redirect/redirect-to-dataurl.any.js:

(redirectDataURL):

  • web-platform-tests/fetch/api/redirect/w3c-import.log:
  • web-platform-tests/fetch/api/resources/keepalive-iframe.html:
  • web-platform-tests/fetch/api/resources/method.py:

(main):

  • web-platform-tests/fetch/api/resources/preflight.py:

(main):

  • web-platform-tests/fetch/api/resources/redirect.py:

(main):

  • web-platform-tests/fetch/api/resources/stash-put.py:

(main):

  • web-platform-tests/fetch/api/resources/trickle.py:

Source/WebCore:

Implement step 11 of HTTP-redirect fetch [1] to redirect to GET
method, remove body and strip certain headers for 301, 302 and 303 redirects.

Tests: imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any.html

imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any.worker.html

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::checkRedirectionCrossOriginAccessControl):

  • platform/network/HTTPHeaderNames.in:
  • platform/network/ResourceRequestBase.cpp:

(WebCore::shouldUseGet):
(WebCore::ResourceRequestBase::redirectAsGETIfNeeded):
(WebCore::ResourceRequestBase::redirectedRequest const):

  • platform/network/ResourceRequestBase.h:

LayoutTests:

Add platform expectations for redirect-method.any.html and
redirect-method.any.worker.html. Remove expectations for
already removed tests redirect-method.html and
redirect-method.worker.html.

  • platform/gtk/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method-worker-expected.txt: Removed.
  • platform/gtk/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any-expected.txt: Renamed from LayoutTests/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method-expected.txt.
  • platform/gtk/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any.worker-expected.txt: Renamed from LayoutTests/platform/wpe/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method-expected.txt.
  • platform/mac-mojave-wk1/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any-expected.txt: Added.
  • platform/mac-mojave-wk1/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any.worker-expected.txt: Added.
  • platform/mac-mojave/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any-expected.txt: Added.
  • platform/mac-mojave/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any.worker-expected.txt: Added.
  • platform/mac/TestExpectations:
  • platform/wpe/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method-worker-expected.txt: Removed.
  • platform/wpe/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any-expected.txt.
  • platform/wpe/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any.worker-expected.txt: Copied from LayoutTests/imported/w3c/web-platform-tests/fetch/api/redirect/redirect-method.any.worker-expected.txt.
10:50 AM Changeset in webkit [261820] by Antti Koivisto
  • 11 edits
    2 adds in trunk

[Wheel event region] Invalidation for root style
https://bugs.webkit.org/show_bug.cgi?id=212029

Reviewed by Simon Fraser.

Source/WebCore:

Test: fast/scrolling/mac/wheel-event-listener-region-root-invalidation.html

Invalidate the region when event listeners change on Document or Window.

  • dom/Document.cpp:

(WebCore::Document::invalidateEventListenerRegions):

  • dom/Document.h:

(isType):

  • dom/Element.cpp:

(WebCore::Element::invalidateEventListenerRegions):

  • dom/Element.h:
  • dom/EventTarget.cpp:

(WebCore::EventTarget::addEventListener):
(WebCore::EventTarget::removeEventListener):
(WebCore::EventTarget::removeAllEventListeners):
(WebCore::EventTarget::invalidateEventListenerRegions):

  • dom/EventTarget.h:
  • style/StyleAdjuster.cpp:

(WebCore::Style::Adjuster::adjustEventListenerRegionTypesForRootStyle):

  • style/StyleAdjuster.h:
  • style/StyleResolveForDocument.cpp:

(WebCore::Style::resolveForDocument):

LayoutTests:

  • fast/scrolling/mac/wheel-event-listener-region-root-invalidation-expected.txt: Added.
  • fast/scrolling/mac/wheel-event-listener-region-root-invalidation.html: Added.
10:47 AM Changeset in webkit [261819] by Simon Fraser
  • 8 edits
    2 adds in trunk

Find doesn't always scroll search results into view
https://bugs.webkit.org/show_bug.cgi?id=212007
<rdar://problem/36333321>

Reviewed by Wenson Hsieh.

Source/WebCore:

HighlightData::collectBounds() could produce overly large bounds, causing the selection
to fail to scroll into view.

This happened when multiple block ancestors were added to 'renderers', with empty
rects. The process of mapping that empty rect to a quad via localToAbsoluteQuad()
could produce an empty quad at a fractional offset, then calling enclosingBoundingBox()
on the quad would create a 1x1 rectangle, which got unioned with selectionRect.

Fix by skipping entries with empty rects.

Add a Selection log channel and some logging that makes this trivial to see.

Test: editing/selection/selection-bounds-fractional-containing-blocks.html

  • platform/Logging.h:
  • rendering/HighlightData.cpp:

(WebCore::HighlightData::collectBounds const):

LayoutTests:

  • editing/selection/selection-bounds-fractional-containing-blocks-expected.txt: Added.
  • editing/selection/selection-bounds-fractional-containing-blocks.html: Added.
10:16 AM Changeset in webkit [261818] by Darin Adler
  • 9 edits in trunk

Add iterator checking to ListHashSet
https://bugs.webkit.org/show_bug.cgi?id=211669

Reviewed by Anders Carlsson.

Source/WebCore:

  • page/ios/ContentChangeObserver.h: Added an include of Element.h, needed to call

makeWeakPtr in an inline function. This is due to a change in the way makeWeakPtr
now checks the type of the argument. It's possible we could refine it further to
relax this requirement, but it seems OK to include Element.h here.

Source/WTF:

HashSet and HashMap have iterator checking in debug builds.
Add similar checking to ListHashSet, controlled by the same
macro, CHECK_HASHTABLE_ITERATORS. Use WeakPtr to make the
implementation simple.

  • wtf/Forward.h: Update to add a second parameter to WeakPtr.

Also rearranged and tweaked the file a bug.

  • wtf/ListHashSet.h: Make ListHashSet and ListHashSetNode derive

from CanMakeWeakPtr. Add m_weakSet and m_weakPosition members to
ListHashSetConstIterator, and assert their values at the appropriate
times so we will get a breakpoint or crash.

  • wtf/WeakHashSet.h: Updated to add a Counter argument for testing.
  • wtf/WeakPtr.h: Removed the DID_CREATE_WEAK_PTR_IMPL and

WILL_DESTROY_WEAK_PTR_IMPL macros, which didn't really work because
using them violated the C++ one-definition rule. Replaced with
a Counter argument, which defaults to EmptyCounter, which is inlines
that do nothing. This required some updates to the classes and
functions to make them work with a second argument.

Tools:

  • TestWebKitAPI/Tests/WTF/WeakPtr.cpp: Removed use of the DID_CREATE_WEAK_PTR_IMPL

and WILL_DESTROY_WEAK_PTR_IMPL, which didn't work consistently because of the
one-definition rule. Instead, this file parameterizes the WeakPtr family of
class templates with a counter class. To avoid having to rewrite test code, used
alias templates to insert these class template into the TestWebKitAPI namespace,
hiding the class templates from the WTF namespace.

10:08 AM Changeset in webkit [261817] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

[ iOS ] fast/hidpi/filters-and-image-buffer-resolution.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=208543

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations: Remove flaky expectation.
9:41 AM Changeset in webkit [261816] by Peng Liu
  • 3 edits in trunk/Tools

[iPad Simulator] TestWebKitAPI.WebKitLegacy.ScrollingDoesNotPauseMedia is timing out
https://bugs.webkit.org/show_bug.cgi?id=211792

Reviewed by Daniel Bates.

Fix deadlocks in two API tests (only reproducible on iPad simulators).

  • TestWebKitAPI/Tests/WebKitLegacy/ios/PreemptVideoFullscreen.mm:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:

(TestWebKitAPI::TEST):

9:23 AM Changeset in webkit [261815] by Wenson Hsieh
  • 16 edits
    2 adds in trunk

Single selection <select> with <optgroups> shows multiple selected options
https://bugs.webkit.org/show_bug.cgi?id=199485
<rdar://problem/52757531>

Reviewed by Megan Gardner.

Source/WebKit:

Fixes a long-standing bug in WKMultipleSelectPicker. Prior to this patch, we rely on the delegate method
-pickerView:row:column:checked: to be called twice whenever an item is selected: one time for the item that is
no longer checked, and another for the newly checked item. This method is responsible for updating the cached
FocusedElementInformation that determines the data model for the select menu, with the expectation that the
unchecked item would be updated to have isSelected = false;, and the new checked item would have isSelected
= true;.

However, -pickerView:row:column:checked: is only called for visible item cells. This means that if the user
checks an item, scrolls the select menu items down so that the checked item is offscreen, and then checks a
different item, we only get notified that the new item is checked, and as a result, fail to uncheck the previous
item.

To address this, tweak our logic for handling a single select so that when an item is checked, we additionally
update the previously checked item to not be selected. Also, fix what seems to be a bug in the logic for
updating _singleSelectionIndex, which is currently updated even when the item is unchecked. It seems to work
out at the moment, because -pickerView:row:column:checked: seems to be called with checked := YES after the
previous item was unchecked (assuming that it was visible).

Test: fast/forms/ios/no-stale-checked-items-in-select-picker.html

  • UIProcess/API/ios/WKWebViewPrivateForTestingIOS.h:
  • UIProcess/API/ios/WKWebViewTestingIOS.mm:

(-[WKWebView selectFormAccessoryHasCheckedItemAtRow:]):

  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView selectFormAccessoryHasCheckedItemAtRow:]):

Add plumbing for a new testing hook.

  • UIProcess/ios/forms/WKFormSelectControl.h:
  • UIProcess/ios/forms/WKFormSelectControl.mm:

(-[WKFormSelectControl selectFormAccessoryHasCheckedItemAtRow:]):

  • UIProcess/ios/forms/WKFormSelectPicker.mm:

(-[WKMultipleSelectPicker pickerView:viewForRow:forComponent:reusingView:]):
(-[WKMultipleSelectPicker pickerView:row:column:checked:]):
(-[WKMultipleSelectPicker selectRow:inComponent:extendingSelection:]):

Also, fix an existing bug in this testing helper method that crashed the test runner due to calling an
unimplemented selector. Instead of trying to invoke -pickerView:didSelectRow:inComponent:, we should be using
-pickerView:row:column:checked: instead for multiple select pickers (which, somewhat confusingly, are still
used for single select elements that have optgroups.)

(-[WKMultipleSelectPicker selectFormAccessoryHasCheckedItemAtRow:]):

Tools:

Add a new helper method to check whether the currently presented form accessory is a select menu, and has a
checked menu item at the given row.

  • TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
  • TestRunnerShared/UIScriptContext/UIScriptController.h:

(WTR::UIScriptController::selectFormAccessoryHasCheckedItemAtRow const):

  • WebKitTestRunner/ios/UIScriptControllerIOS.h:
  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptControllerIOS::selectFormAccessoryHasCheckedItemAtRow const):

LayoutTests:

Add a layout test to verify that we don't leave behind a checked select item after scrolling it offscreen and
then checking a different item.

  • fast/forms/ios/no-stale-checked-items-in-select-picker-expected.txt: Added.
  • fast/forms/ios/no-stale-checked-items-in-select-picker.html: Added.
  • platform/ipad/TestExpectations:
  • resources/ui-helper.js:

(window.UIHelper.selectFormAccessoryPickerRow):
(window.UIHelper.selectFormAccessoryHasCheckedItemAtRow):

9:20 AM Changeset in webkit [261814] by commit-queue@webkit.org
  • 2 edits in trunk

[GTK] Allow gtk-doc and introspection in cross builds
https://bugs.webkit.org/show_bug.cgi?id=212026

Patch by Michael Catanzaro <Michael Catanzaro> on 2020-05-18
Reviewed by Adrian Perez de Castro.

Stop disabling these options in cross builds.

  • Source/cmake/OptionsGTK.cmake:
9:04 AM Changeset in webkit [261813] by youenn@apple.com
  • 3 edits in trunk/LayoutTests

webrtc/datachannel/bufferedAmountLowThreshold.html is failing flakily
https://bugs.webkit.org/show_bug.cgi?id=211953

Reviewed by Eric Carlson.

  • webrtc/datachannel/bufferedAmountLowThreshold-default.html:

Update test to make it more readable and robust, following changes made to webrtc/datachannel/bufferedAmountLowThreshold.html.

  • webrtc/datachannel/bufferedAmountLowThreshold.html:

Split the tests in two parts to more easily debug which part (connection setup or sending lots of data) might time out.
Make sure to not send too much data by sending only one burst of data.

8:23 AM Changeset in webkit [261812] by Wenson Hsieh
  • 13 edits
    2 adds in trunk

[iOS] Unexpected capitalization of next word after repositioning caret
https://bugs.webkit.org/show_bug.cgi?id=211969
<rdar://problem/62605526>

Reviewed by Alex Christensen.

Source/WebKit:

The changes in r242551 refactored synchronous autocorrection context request logic such that it uses
waitForAndDispatchImmediately instead of sendSync, in order to make it interruptible by unbounded sync IPC
sent from the web process. If the UI process receives sync IPC, it will immediately cancel the autocorrection
context request (returning an empty context), before proceeding to handle the incoming sync IPC.

In a more recent version of iOS, other changes around spellchecking have caused the synchronous message
WebPageProxy::checkTextOfParagraph to be sent from the web process in such a way that it now frequently
coincides with the synchronous autocorrection context request being sent from the UI process. The result is that
we now frequently end up cancelling autocorrection requests early by responding with empty contexts. This
manifests in the keyboard sometimes losing information about its autocapitalization context and believing that
it is in an empty text field, which reverts to default autocorrection suggestions and autocapitalizes the
software keyboard.

To fix this, instead of using the InterruptWaitingIfSyncMessageArrives option when waiting for the IPC
response, add and use a new flag that allows us to process an incoming sync IPC message if we're waiting for
the sync message response. We use this new IPC flag when waiting synchronously for HandleAutocorrectionContext.

Test: editing/selection/ios/changing-selection-does-not-trigger-autocapitalization.html

  • Platform/IPC/Connection.cpp:

(IPC::Connection::processIncomingMessage):

If the new IPC flag is set and the incoming message is synchronous, allow it to immediately dispatch the sync
message by enqueueing it and then waking up m_waitForMessageCondition so that it can process the message.

  • Platform/IPC/Connection.h:
  • Platform/spi/ios/UIKitSPI.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView requestAutocorrectionContextWithCompletionHandler:]):

Use DispatchIncomingSyncMessagesWhileWaiting instead of InterruptWaitingIfSyncMessageArrives.

Tools:

Add a new UIScriptController hook to query whether or not the software keyboard is in shifted state.

  • TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
  • TestRunnerShared/UIScriptContext/UIScriptController.h:

(WTR::UIScriptController::keyboardIsAutomaticallyShifted const):

  • TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:

Adjust a couple of API tests that copy and paste back-to-back, so that they wait for the copy to finish before
attempting to paste.

  • WebKitTestRunner/ios/UIScriptControllerIOS.h:
  • WebKitTestRunner/ios/UIScriptControllerIOS.mm:

(WTR::UIScriptControllerIOS::keyboardIsAutomaticallyShifted const):

LayoutTests:

Add a new layout test to verify that the keyboard does not automatically shift (i.e. autocapitalize) when
changing selection quickly inside a text field.

  • editing/selection/ios/changing-selection-does-not-trigger-autocapitalization-expected.txt: Added.
  • editing/selection/ios/changing-selection-does-not-trigger-autocapitalization.html: Added.
  • resources/ui-helper.js:

(window.UIHelper.keyboardIsAutomaticallyShifted):

8:00 AM Changeset in webkit [261811] by Lauro Moura
  • 5 edits in trunk/Source/WebKit

webkitpy: Update test data after r261776
https://bugs.webkit.org/show_bug.cgi?id=212008

Reviewed by Alex Christensen.

Covered by existing tests.

  • Scripts/test-legacyMessageReceiver.cpp:
  • Scripts/test-legacyMessages.h:

(Messages::WebPage::DidCreateWebProcessConnection::DidCreateWebProcessConnection):

  • Scripts/webkit/messages_unittest.py:
  • Scripts/webkit/test-legacy.messages.in:
7:01 AM Changeset in webkit [261810] by Alan Bujtas
  • 8 edits in trunk/Source/WebCore

[LFC][TFC] Add support for computing the collapsed table border
https://bugs.webkit.org/show_bug.cgi?id=212003

Reviewed by Antti Koivisto.

UAs must compute an initial left and right border width for the table by examining
the first and last cells in the first row of the table.
The left border width of the table is half of the first cell's collapsed left border,
and the right border width of the table is half of the last cell's collapsed right border.
The top border width of the table is computed by examining all cells who collapse their top
borders with the top border of the table. The top border width of the table is equal to half of the
maximum collapsed top border. The bottom border width is computed by examining all cells whose bottom borders collapse
with the bottom of the table. The bottom border width is equal to half of the maximum collapsed bottom border.

https://www.w3.org/TR/CSS22/tables.html#collapsing-borders

This patch implements the table box part of the border collapsing. Inner table elements need to implement collapsing as well.

  • layout/LayoutState.cpp:

(WebCore::Layout::LayoutState::ensureTableFormattingState):

  • layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp:

(WebCore::Layout::TableWrapperBlockFormattingContext::layoutTableBox):
(WebCore::Layout::TableWrapperBlockFormattingContext::computeBorderAndPaddingForTableBox):
(WebCore::Layout::TableWrapperBlockFormattingContext::computeWidthAndMarginForTableBox):

  • layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.h:
  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::computedIntrinsicWidthConstraints):
(WebCore::Layout::TableFormattingContext::ensureTableGrid):

  • layout/tableformatting/TableFormattingContext.h:
  • layout/tableformatting/TableFormattingState.cpp:

(WebCore::Layout::TableFormattingState::TableFormattingState):

  • layout/tableformatting/TableFormattingState.h:
5:07 AM Changeset in webkit [261809] by Diego Pino Garcia
  • 3 edits in trunk/LayoutTests

[GTK] Gardening, update test expectations after r261779
https://bugs.webkit.org/show_bug.cgi?id=212021

Unreviewed gardening.

  • platform/glib/TestExpectations:
  • platform/gtk/TestExpectations:
4:37 AM Changeset in webkit [261808] by Paulo Matos
  • 4 edits in trunk

JSTests:
Skip stress test array-buffer-view-watchpoint-can-be-fired-in-really-add-in-dfg.js on MIPS

Unreviewed Gardening.

  • stress/array-buffer-view-watchpoint-can-be-fired-in-really-add-in-dfg.js:

LayoutTests:
Skip layout test stack-overflow-regexp.js on MIPS

Unreviewed Gardening.

  • js/script-tests/stack-overflow-regexp.js:
4:25 AM Changeset in webkit [261807] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.29.1

WebKitGTK 2.29.1

4:24 AM Changeset in webkit [261806] by Carlos Garcia Campos
  • 4 edits in trunk

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.29.1 release

.:

  • Source/cmake/OptionsGTK.cmake: Bump version numbers.

Source/WebKit:

  • gtk/NEWS: Add release notes for 2.29.1.
3:29 AM Changeset in webkit [261805] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Clean up media controls content for Apple platforms
https://bugs.webkit.org/show_bug.cgi?id=212011
<rdar://problem/63298588>

Patch by Antoine Quint <Antoine Quint> on 2020-05-18
Reviewed by Dean Jackson.

We strip Copyright and other comments from the CSS and JS media controls files.

  • WebCore.xcodeproj/project.pbxproj:
3:03 AM Changeset in webkit [261804] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit

Move iOS files from Source/WebKit/Sources.txt to Source/WebKit/SourcesCocoa.txt
https://bugs.webkit.org/show_bug.cgi?id=212014

Unreviewed. Move platform specific files to the platform sources file.

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2020-05-18

  • Sources.txt:
  • SourcesCocoa.txt:
2:09 AM Changeset in webkit [261803] by aboya@igalia.com
  • 4 edits in trunk

Source/WebCore:
[GStreamer][MediaSource] Remove orphaned tracks in updateTracks()
https://bugs.webkit.org/show_bug.cgi?id=211980

Reviewed by Xabier Rodriguez-Calvar.

This patch ensures tracks missing from a subsequent updateTracks()
calls are removed from the player.

This fixes regressions on the following tests caused on r261683.

imported/w3c/web-platform-tests/mediacapture-streams/MediaStream-removetrack.https.html
imported/w3c/web-platform-tests/mediacapture-streams/MediaStreamTrack-applyConstraints.https.html

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::hashSetFromHashMapKeys):
(WebCore::MediaPlayerPrivateGStreamer::updateTracks):

LayoutTests:
[GStreamer] Remove orphaned tracks in updateTracks()
https://bugs.webkit.org/show_bug.cgi?id=211980

Reviewed by Xabier Rodriguez-Calvar.

Updated test expectations.

  • platform/gtk/TestExpectations:
1:37 AM Changeset in webkit [261802] by Carlos Garcia Campos
  • 33 edits
    2 deletes in trunk/Source

[GTK] "ASSERTION FAILED: !m_adoptionIsRequired" when double clicking on a word
https://bugs.webkit.org/show_bug.cgi?id=211957

Reviewed by Adrian Perez de Castro.

Source/WebCore:

Make SelectionData non-refcounted. We can just move in most of the cases to avoid copies.

  • platform/Pasteboard.h:
  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::createForDragAndDrop):
(WebCore::Pasteboard::Pasteboard):
(WebCore::Pasteboard::selectionData const):

  • platform/gtk/SelectionData.h:

Source/WebKit:

Remove WebSelectionData wrapper since we can just encode/decode WebCore::SelectionData.

  • Shared/WebCoreArgumentCoders.h:
  • Shared/gtk/ArgumentCodersGtk.cpp:

(IPC::ArgumentCoder<SelectionData>::decode): Use modern decoder.

  • Shared/gtk/ArgumentCodersGtk.h:
  • Shared/gtk/WebSelectionData.cpp: Removed.
  • Shared/gtk/WebSelectionData.h: Removed.
  • SourcesGTK.txt:
  • UIProcess/API/gtk/DragSource.h:
  • UIProcess/API/gtk/DragSourceGtk3.cpp:

(WebKit::DragSource::DragSource):
(WebKit::DragSource::begin):

  • UIProcess/API/gtk/DragSourceGtk4.cpp:

(WebKit::DragSource::begin):

  • UIProcess/API/gtk/DropTarget.h:
  • UIProcess/API/gtk/DropTargetGtk3.cpp:

(WebKit::DropTarget::accept):
(WebKit::DropTarget::enter):
(WebKit::DropTarget::update):
(WebKit::DropTarget::leaveTimerFired):
(WebKit::DropTarget::drop):

  • UIProcess/API/gtk/PageClientImpl.cpp:

(WebKit::PageClientImpl::startDrag):

  • UIProcess/API/gtk/PageClientImpl.h:
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseStartDrag):

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::performDragControllerAction):
(WebKit::WebPageProxy::startDrag):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/WebPasteboardProxy.h:
  • UIProcess/WebPasteboardProxy.messages.in:
  • UIProcess/gtk/Clipboard.h:
  • UIProcess/gtk/ClipboardGtk3.cpp:

(WebKit::WriteAsyncData::WriteAsyncData):
(WebKit::Clipboard::write):

  • UIProcess/gtk/ClipboardGtk4.cpp:

(WebKit::Clipboard::write):

  • UIProcess/gtk/WebPasteboardProxyGtk.cpp:

(WebKit::WebPasteboardProxy::writeToClipboard):
(WebKit::WebPasteboardProxy::writeCustomData):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::writeToClipboard):

  • WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:

(WebKit::WebDragClient::startDrag):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::performDragControllerAction):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
1:14 AM Changeset in webkit [261801] by zandobersek@gmail.com
  • 1 edit
    19 adds in trunk/LayoutTests

Unreviewed WPE gardening. Providing custom baselines for tests
that require them.

  • platform/wpe/crypto: Added.
  • platform/wpe/crypto/subtle: Added.
  • platform/wpe/crypto/subtle/ecdh-import-pkcs8-key-p521-validate-ecprivatekey-parameters-publickey-expected.txt: Added.
  • platform/wpe/crypto/subtle/ecdsa-import-pkcs8-key-p521-validate-ecprivatekey-parameters-publickey-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext: Added.
  • platform/wpe/fast/layoutformattingcontext/flow-integration-basic-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-basic-row-baseline-align-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-basic-row-baseline-with-nested-table-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-basic-row-vertical-align-baseline-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-fixed-width-colspans-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-fixed-width-with-max-distribution-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-flex-width-border-collapse-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-flex-width-colspans-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-simple-with-fixed-widht-and-inline-content-expected.txt: Added.
  • platform/wpe/fast/layoutformattingcontext/table-with-column-spanner-first-row-expected.txt: Added.
  • platform/wpe/webgl/1.0.3: Added.
  • platform/wpe/webgl/1.0.3/conformance: Added.
  • platform/wpe/webgl/1.0.3/conformance/context: Added.
  • platform/wpe/webgl/1.0.3/conformance/context/methods-expected.txt: Added.
12:37 AM Changeset in webkit [261800] by commit-queue@webkit.org
  • 11 edits in trunk

[GTK] Add WebKitContextMenuItemType for paste as plaintext
https://bugs.webkit.org/show_bug.cgi?id=177638

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2020-05-18
Reviewed by Michael Catanzaro.

Source/WebCore:

Add paste as plain text context menu item for rich editable content.

  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::contextMenuItemSelected):
(WebCore::ContextMenuController::populate):
(WebCore::ContextMenuController::checkOrEnableIfNeeded const):

  • platform/ContextMenuItem.h:
  • platform/LocalizedStrings.h:
  • platform/gtk/LocalizedStringsGtk.cpp:

(WebCore::contextMenuItemTagPasteAsPlainText):

Source/WebKit:

Add WEBKIT_CONTEXT_MENU_ACTION_PASTE_AS_PLAIN_TEXT.

  • Shared/API/glib/WebKitContextMenuActions.cpp:

(webkitContextMenuActionGetActionTag):
(webkitContextMenuActionGetForContextMenuItem):
(webkitContextMenuActionGetLabel):

  • UIProcess/API/gtk/WebKitContextMenuActions.h:
  • UIProcess/gtk/KeyBindingTranslator.cpp:

Tools:

Update default context menu test case to also test the context menu for rich editable content.

  • TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:

(prepareContextMenuTestView):
(testContextMenuDefaultMenu):

12:24 AM Changeset in webkit [261799] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed WPE gardening.

  • platform/wpe/TestExpectations:

Remove the imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements
flaky-crash expectation. The reported crashes are not occurring anymore. Furthermore,
the whole subdirectory is skipped globally, so this expectation is re-enabling all
the tests that in majority time out, prolonging the testing.

May 17, 2020:

10:37 PM Changeset in webkit [261798] by ysuzuki@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, link fix for our internal Debug build

  • heap/AlignedMemoryAllocator.cpp:
10:15 PM Changeset in webkit [261797] by Lauro Moura
  • 2 edits in trunk/Source/JavaScriptCore

[JSC] Silence unused-but-set-parameter warnings for older compilers
https://bugs.webkit.org/show_bug.cgi?id=212006

Reviewed by Mark Lam.

GCC up to 9.x will emit unused-but-set-parameter for the sources
parameter when NumberOfRegisters is zero (the if block is eliminated)
and for destinations when also ASSERT_ENABLED is false.

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::setupStubArgs):

9:14 PM Changeset in webkit [261796] by dbates@webkit.org
  • 4 edits in trunk/LayoutTests

Make editing-word-with-marker-1.html work on iOS
https://bugs.webkit.org/show_bug.cgi?id=211814

Reviewed by Simon Fraser and David Kilzer.

Minimal changes needed to make the test work on iOS + rebase the results. I was tempted to go
full js-test.js conversion, but I didn't do so to reduce the risk I introduce a bug and I think
is good enough.

To make the test work on iOS I enable internals.setContinuousSpellCheckingEnabled() + use UIHelper
to activate the textarea + blur the textarea on reset (for maximal code reuse). I didn't enable this
via the WKTR option spellCheckingDots because this test should be capable of running in DumpRenderTree
though we don't actually run DumpRenderTree for iOS on any bots. So, I did this largely for just for me.

  • editing/mac/spelling/editing-word-with-marker-1-expected.txt:
  • editing/mac/spelling/editing-word-with-marker-1.html:
  • platform/ios/TestExpectations: Temporarily mark this test as PASS here so that iOS runs it even

though its in a Mac-specific directory. I will remove this entry when I move the test to editing/spelling
in the fix for <https://webkit.org/b/211802>.

12:42 PM Changeset in webkit [261795] by aestes@apple.com
  • 2 edits in trunk/LayoutTests

http/tests/ssl/applepay/ApplePayInstallmentConfiguration.https.html fails in public SDK builds
https://bugs.webkit.org/show_bug.cgi?id=212000

  • platform/mac-wk2/TestExpectations: Skipped test on Catalina.
12:28 PM Changeset in webkit [261794] by Simon Fraser
  • 9 edits in trunk

Fix operator== and hash() for ExtendedColor
https://bugs.webkit.org/show_bug.cgi?id=211993

Reviewed by Sam Weinig.

Source/WebCore:

Color::operator== and hash() were wrong for extended color. Fix operator==
to compare extended colors. Extended and non-extended colors have to always
conpare as non-equal to preserve computed style behavior, currently.

Fix hash() to hash the color components and colorspace for ExtendedColor.

Add some API tests for these code paths.

  • platform/graphics/Color.cpp:

(WebCore::extendedColorsEqual):

  • platform/graphics/Color.h:

(WebCore::operator==):
(WebCore::Color::hash const):

  • platform/graphics/ColorUtilities.cpp:

(WebCore::areEssentiallyEqual):

  • platform/graphics/ColorUtilities.h:

(WebCore::operator==):
(WebCore::operator!=):

  • platform/graphics/ExtendedColor.cpp:

(WebCore::ExtendedColor::hash const):

  • platform/graphics/ExtendedColor.h:

(WebCore::operator==):
(WebCore::operator!=):

Tools:

  • TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:

(TestWebKitAPI::TEST):

9:17 AM Changeset in webkit [261793] by Alan Bujtas
  • 9 edits
    3 adds in trunk/Source/WebCore

[LFC][BFC] Introduce TableWrapperBlockFormattingContext
https://bugs.webkit.org/show_bug.cgi?id=211996

Reviewed by Antti Koivisto.

Table wrapper box establishes a special BFC with only captions and the actual table box in it.
It mostly behaves like a normal BFC but the table box requires some special handing when it comes
to padding/border and width/height computation.
This patch moves the table box specific code from generic BFC to this new subclass.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • layout/FormattingContext.h:
  • layout/LayoutContext.cpp:

(WebCore::Layout::LayoutContext::createFormattingContext):

  • layout/blockformatting/BlockFormattingContext.cpp:

(WebCore::Layout::BlockFormattingContext::computeHeightAndMargin):

  • layout/blockformatting/BlockFormattingContext.h:

(): Deleted.

  • layout/blockformatting/BlockFormattingContextGeometry.cpp:

(WebCore::Layout::BlockFormattingContext::Geometry::inFlowWidthAndMargin):

  • layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.cpp: Added.

(WebCore::Layout::TableWrapperBlockFormattingContext::TableWrapperBlockFormattingContext):
(WebCore::Layout::TableWrapperBlockFormattingContext::layoutInFlowContent):
(WebCore::Layout::TableWrapperBlockFormattingContext::layoutTableBox):
(WebCore::Layout::TableWrapperBlockFormattingContext::computeWidthAndMarginForTableBox):
(WebCore::Layout::TableWrapperBlockFormattingContext::computeHeightAndMarginForTableBox):

  • layout/blockformatting/tablewrapper/TableWrapperBlockFormattingContext.h: Added.
1:35 AM Changeset in webkit [261792] by Carlos Garcia Campos
  • 19 edits
    1 add in trunk

[GTK] Move to new Pasteboard API
https://bugs.webkit.org/show_bug.cgi?id=177633

Reviewed by Adrian Perez de Castro.

Source/WebCore:

Add support for custom data and remove the support for unknown data types that is currently unused.

  • editing/gtk/EditorGtk.cpp:

(WebCore::Editor::writeSelectionToPasteboard): Set the contentOrigin.

  • editing/gtk/WebContentReaderGtk.cpp:

(WebCore::shouldReplaceSubresourceURL): Helper to decide whether to replace the subresource URL.
(WebCore::WebContentMarkupReader::readHTML): Create a fragment for HTML sanitizing it if needed.

  • platform/Pasteboard.h:
  • platform/PasteboardCustomData.h:

(WebCore::PasteboardCustomData::gtkType): Mime type name for GTK custom pasteboard data.

  • platform/SharedBuffer.h:
  • platform/glib/SharedBufferGlib.cpp:

(WebCore::SharedBuffer::createGBytes const): Create a GBytes wrapping the SharedBuffer data.

  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::writeString):
(WebCore::Pasteboard::write):
(WebCore::Pasteboard::read):
(WebCore::Pasteboard::hasData):
(WebCore::Pasteboard::typesSafeForBindings):
(WebCore::Pasteboard::typesForLegacyUnsafeBindings):
(WebCore::Pasteboard::readOrigin):
(WebCore::Pasteboard::readString):
(WebCore::Pasteboard::readStringInCustomData):
(WebCore::Pasteboard::fileContentState):
(WebCore::Pasteboard::writeCustomData):

  • platform/gtk/SelectionData.cpp:

(WebCore::SelectionData::clearAllExceptFilenames):

  • platform/gtk/SelectionData.h:

(WebCore::SelectionData::setCustomData):
(WebCore::SelectionData::customData const):
(WebCore::SelectionData::hasCustomData const):
(WebCore::SelectionData::clearCustomData):

Source/WebKit:

Enable custom pasteboard data.

  • Shared/WebPreferencesDefaultValues.h:
  • Shared/gtk/ArgumentCodersGtk.cpp:

(IPC::ArgumentCoder<SelectionData>::encode):
(IPC::ArgumentCoder<SelectionData>::decode):

  • UIProcess/WebPasteboardProxy.cpp:
  • UIProcess/gtk/ClipboardGtk3.cpp:

(WebKit::Clipboard::write): Add support for writing URI list and custom data.

  • UIProcess/gtk/ClipboardGtk4.cpp:

(WebKit::Clipboard::write): Ditto.

  • UIProcess/gtk/WebPasteboardProxyGtk.cpp:

(WebKit::WebPasteboardProxy::typesSafeForDOMToReadAndWrite):
(WebKit::WebPasteboardProxy::writeCustomData):

LayoutTests:

Update text expectations.

  • platform/gtk/TestExpectations:
  • platform/gtk/editing/pasteboard/data-transfer-get-data-on-paste-rich-text-expected.txt: Added.

May 16, 2020:

9:55 PM Changeset in webkit [261791] by Simon Fraser
  • 14 edits in trunk/Source/WebCore

Some color-related cleanup
https://bugs.webkit.org/show_bug.cgi?id=211991

Reviewed by Sam Weinig.

Change FloatComponents and ColorComponents to use std::array<>.

Add Color::toSRGBAComponentsLossy() to make explicit potentially lossy conversions
between P3 and sRGB colors, and call it in places where we do that conversion.

Add const in a few places.

  • Headers.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/Color.cpp:

(WebCore::Color::Color):
(WebCore::Color::toSRGBAComponentsLossy const):
(WebCore::Color::asExtended const):

  • platform/graphics/Color.h:
  • platform/graphics/ColorUtilities.cpp:

(WebCore::ColorMatrix::ColorMatrix):

  • platform/graphics/ColorUtilities.h:

(WebCore::FloatComponents::FloatComponents):
(): Deleted.

  • platform/graphics/ExtendedColor.cpp:

(WebCore::ExtendedColor::create):
(WebCore::ExtendedColor::cssText const):

  • platform/graphics/ExtendedColor.h:

(WebCore::ExtendedColor::red const):
(WebCore::ExtendedColor::green const):
(WebCore::ExtendedColor::blue const):
(WebCore::ExtendedColor::alpha const):
(WebCore::ExtendedColor::channels const):
(WebCore::ExtendedColor::ExtendedColor):

  • platform/graphics/cg/ColorCG.cpp:

(WebCore::leakCGColor):

  • platform/graphics/filters/FETurbulence.cpp:

(WebCore::FETurbulence::fillRegion const):

  • platform/graphics/filters/FilterOperation.cpp:

(WebCore::InvertLightnessFilterOperation::transformColor const):
(WebCore::InvertLightnessFilterOperation::inverseTransformColor const):

  • platform/graphics/gtk/ColorGtk.cpp:

(WebCore::Color::operator GdkRGBA const):

  • platform/graphics/win/ColorDirect2D.cpp:

(WebCore::Color::operator D2D1_COLOR_F const):
(WebCore::Color::operator D2D1_VECTOR_4F const):

7:57 PM Changeset in webkit [261790] by Simon Fraser
  • 3 edits
    9 moves in trunk/Tools

Rename some API test files
https://bugs.webkit.org/show_bug.cgi?id=211992

Reviewed by Zalan Bujtas.

I'm tired of Quick Open of Color.cpp opening the test file rather than the one I want.

  • TestWebKitAPI/CMakeLists.txt:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebCore/ColorTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/Color.cpp.
  • TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/ExtendedColor.cpp.
  • TestWebKitAPI/Tests/WebCore/FloatPointTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/FloatPoint.cpp.
  • TestWebKitAPI/Tests/WebCore/FloatRectTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/FloatRect.cpp.
  • TestWebKitAPI/Tests/WebCore/FloatSizeTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/FloatSize.cpp.
  • TestWebKitAPI/Tests/WebCore/IntPointTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/IntPoint.cpp.
  • TestWebKitAPI/Tests/WebCore/IntRectTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/IntRect.cpp.
  • TestWebKitAPI/Tests/WebCore/IntSizeTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/IntSize.cpp.
  • TestWebKitAPI/Tests/WebCore/LayoutUnitTests.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/LayoutUnit.cpp.
4:18 PM Changeset in webkit [261789] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the build after r261785.

  • Modules/applepay/PaymentInstallmentConfiguration.mm:

(WebCore::fromDecimalNumber):

2:46 PM Changeset in webkit [261788] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Let Xcode have its way with WebCore project

  • WebCore.xcodeproj/project.pbxproj:
  • Resort TableLayout.cpp.
12:21 PM Changeset in webkit [261787] by keith_miller@apple.com
  • 93 edits
    48 adds
    6 deletes in trunk/JSTests

[test262] Update to master for May
https://bugs.webkit.org/show_bug.cgi?id=211985

Reviewed by Mark Lam.

  • test262/expectations.yaml:
  • test262/harness/testIntl.js:
  • test262/latest-changes-summary.txt:
  • test262/test/annexB/built-ins/Array/from/iterator-method-emulates-undefined.js: Added.
  • test262/test/annexB/built-ins/String/prototype/match/custom-matcher-emulates-undefined.js: Added.
  • test262/test/annexB/built-ins/String/prototype/matchAll/custom-matcher-emulates-undefined.js: Added.
  • test262/test/annexB/built-ins/String/prototype/replace/custom-replacer-emulates-undefined.js: Added.
  • test262/test/annexB/built-ins/String/prototype/replaceAll/custom-replacer-emulates-undefined.js: Added.
  • test262/test/annexB/built-ins/String/prototype/search/custom-searcher-emulates-undefined.js: Added.
  • test262/test/annexB/built-ins/String/prototype/split/custom-splitter-emulates-undefined.js: Added.
  • test262/test/annexB/built-ins/TypedArrayConstructors/from/iterator-method-emulates-undefined.js: Added.

(testWithTypedArrayConstructors):

  • test262/test/annexB/language/expressions/yield/star-iterable-throw-emulates-undefined-throws-when-called.js:
  • test262/test/built-ins/AsyncGeneratorFunction/proto-from-ctor-realm-prototype.js: Added.
  • test262/test/built-ins/Atomics/waitAsync/false-for-timeout-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/good-views.js:
  • test262/test/built-ins/Atomics/waitAsync/nan-for-timeout-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/negative-timeout-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-no-operation.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-add.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-and.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-compareExchange.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-exchange.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-or.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-store.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-sub.js:
  • test262/test/built-ins/Atomics/waitAsync/no-spurious-wakeup-on-xor.js:
  • test262/test/built-ins/Atomics/waitAsync/null-for-timeout-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/object-for-timeout-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/poisoned-object-for-timeout-throws-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/symbol-for-index-throws-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/symbol-for-timeout-throws-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/symbol-for-value-throws-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/true-for-timeout-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/undefined-for-timeout-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/undefined-index-defaults-to-zero-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/value-not-equal-agent.js:
  • test262/test/built-ins/Atomics/waitAsync/waiterlist-block-indexedposition-wake.js:
  • test262/test/built-ins/Atomics/waitAsync/was-woken-before-timeout.js:
  • test262/test/built-ins/BigInt/prototype/toString/a-z.js: Added.
  • test262/test/built-ins/Function/proto-from-ctor-realm-prototype.js: Added.
  • test262/test/built-ins/GeneratorFunction/proto-from-ctor-realm-prototype.js: Added.
  • test262/test/built-ins/NativeErrors/AggregateError/proto-from-ctor-realm.js:
  • test262/test/built-ins/Number/isSafeInteger/safe-integers.js:
  • test262/test/built-ins/Number/prototype/toString/a-z.js: Added.
  • test262/test/built-ins/Object/assign/strings-and-symbol-order-proxy.js: Added.

(getOwnPropertyDescriptor):
(ownKeys):

  • test262/test/built-ins/Object/defineProperties/proxy-no-ownkeys-returned-keys-order.js: Added.

(getOwnPropertyDescriptor):

  • test262/test/built-ins/Object/freeze/proxy-no-ownkeys-returned-keys-order.js: Added.

(getOwnPropertyDescriptor):

  • test262/test/built-ins/Object/getOwnPropertyDescriptors/proxy-no-ownkeys-returned-keys-order.js: Added.

(getOwnPropertyDescriptor):

  • test262/test/built-ins/Object/isFrozen/proxy-no-ownkeys-returned-keys-order.js: Added.

(getOwnPropertyDescriptor):

  • test262/test/built-ins/Object/isSealed/proxy-no-ownkeys-returned-keys-order.js: Added.

(getOwnPropertyDescriptor):

  • test262/test/built-ins/Object/prototype/hasOwnProperty/S15.2.4.5_A10.js: Removed.
  • test262/test/built-ins/Object/prototype/hasOwnProperty/S15.2.4.5_A11.js: Removed.
  • test262/test/built-ins/Object/prototype/hasOwnProperty/S15.2.4.5_A8.js: Removed.
  • test262/test/built-ins/Object/prototype/hasOwnProperty/S15.2.4.5_A9.js: Removed.
  • test262/test/built-ins/Object/prototype/hasOwnProperty/length.js: Added.
  • test262/test/built-ins/Object/prototype/hasOwnProperty/topropertykey_before_toobject.js: Added.

(coercibleKey1.get toString):
(coercibleKey1.get valueOf):
(coercibleKey2.Symbol.toPrimitive):

  • test262/test/built-ins/Object/prototype/toString/proxy-revoked-during-get-call.js: Added.
  • test262/test/built-ins/Object/seal/proxy-no-ownkeys-returned-keys-order.js: Added.

(defineProperty):

  • test262/test/built-ins/Promise/all/invoke-resolve-get-once-no-calls.js:
  • test262/test/built-ins/Promise/all/resolve-not-callable-close.js: Added.

(const.iter.return.return):
(const.iter.Symbol.iterator):
(Promise.all.iter.then):

  • test262/test/built-ins/Promise/allSettled/resolve-not-callable-close.js: Added.

(const.iter.return.return):
(const.iter.Symbol.iterator):
(Promise.allSettled.iter.then):

  • test262/test/built-ins/Promise/any/resolve-not-callable-close.js: Added.

(const.iter.return.return):
(const.iter.Symbol.iterator):
(Promise.any.iter.then):

  • test262/test/built-ins/Promise/race/resolve-not-callable-close.js: Added.

(const.iter.return.return):
(const.iter.Symbol.iterator):
(Promise.race.iter.then):

  • test262/test/intl402/DateTimeFormat/prototype/resolvedOptions/order-dayPeriod.js:
  • test262/test/intl402/DateTimeFormat/prototype/resolvedOptions/order-fractionalSecondDigits.js:
  • test262/test/intl402/DateTimeFormat/prototype/resolvedOptions/order-style.js:
  • test262/test/intl402/DateTimeFormat/prototype/resolvedOptions/order.js:
  • test262/test/intl402/RelativeTimeFormat/prototype/format/pl-pl-style-long.js:

(expected.of.Object.entries):

  • test262/test/intl402/RelativeTimeFormat/prototype/format/pl-pl-style-narrow.js:

(expected.of.Object.entries):

  • test262/test/intl402/RelativeTimeFormat/prototype/format/pl-pl-style-short.js:

(expected.of.Object.entries):

  • test262/test/intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-long.js:

(expected.of.Object.entries):

  • test262/test/intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-narrow.js:

(expected.of.Object.entries):

  • test262/test/intl402/RelativeTimeFormat/prototype/formatToParts/pl-pl-style-short.js:

(expected.of.Object.entries):

  • test262/test/language/expressions/async-generator/named-yield-star-sync-return.js:

(gen):

  • test262/test/language/expressions/async-generator/named-yield-star-sync-throw.js:

(gen):

  • test262/test/language/expressions/async-generator/yield-star-sync-return.js:
  • test262/test/language/expressions/async-generator/yield-star-sync-throw.js:
  • test262/test/language/expressions/class/async-gen-method-static/yield-star-sync-return.js:

(C):

  • test262/test/language/expressions/class/async-gen-method-static/yield-star-sync-throw.js:

(C):

  • test262/test/language/expressions/class/async-gen-method/yield-star-sync-return.js:
  • test262/test/language/expressions/class/async-gen-method/yield-star-sync-throw.js:
  • test262/test/language/expressions/class/elements/async-gen-private-method-static/yield-star-sync-return.js:

(C):

  • test262/test/language/expressions/class/elements/async-gen-private-method-static/yield-star-sync-throw.js:

(C):

  • test262/test/language/expressions/class/elements/async-gen-private-method/yield-star-sync-return.js:
  • test262/test/language/expressions/class/elements/async-gen-private-method/yield-star-sync-throw.js:
  • test262/test/language/expressions/class/elements/field-declaration.js: Added.
  • test262/test/language/expressions/class/elements/fields-anonymous-function-length.js:
  • test262/test/language/expressions/class/elements/private-method-referenced-from-static-method.js:
  • test262/test/language/expressions/object/dstr/object-rest-proxy-ownkeys-returned-keys-order.js: Added.

(getOwnPropertyDescriptor):
(ownKeys):

  • test262/test/language/expressions/object/method-definition/async-gen-yield-star-sync-return.js:
  • test262/test/language/expressions/object/method-definition/async-gen-yield-star-sync-throw.js:
  • test262/test/language/expressions/object/object-spread-proxy-ownkeys-returned-keys-order.js: Added.

(getOwnPropertyDescriptor):
(ownKeys):

  • test262/test/language/identifiers/part-unicode-10.0.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-10.0.0.js:
  • test262/test/language/identifiers/part-unicode-11.0.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-11.0.0.js:
  • test262/test/language/identifiers/part-unicode-12.0.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-12.0.0.js:
  • test262/test/language/identifiers/part-unicode-13.0.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-13.0.0.js:
  • test262/test/language/identifiers/part-unicode-5.2.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-5.2.0.js:
  • test262/test/language/identifiers/part-unicode-6.0.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-6.0.0.js:
  • test262/test/language/identifiers/part-unicode-6.1.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-6.1.0.js:
  • test262/test/language/identifiers/part-unicode-7.0.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-7.0.0.js:
  • test262/test/language/identifiers/part-unicode-8.0.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-8.0.0.js:
  • test262/test/language/identifiers/part-unicode-9.0.0-escaped.js:
  • test262/test/language/identifiers/part-unicode-9.0.0.js:
  • test262/test/language/module-code/eval-rqstd-once.js:
  • test262/test/language/module-code/export-star-as-dflt.js: Added.
  • test262/test/language/module-code/export-star-as-dflt_FIXTURE.js: Added.
  • test262/test/language/statements/async-generator/yield-star-sync-return.js:
  • test262/test/language/statements/async-generator/yield-star-sync-throw.js:
  • test262/test/language/statements/class/async-gen-method-static/yield-star-sync-return.js:
  • test262/test/language/statements/class/async-gen-method-static/yield-star-sync-throw.js:
  • test262/test/language/statements/class/async-gen-method/yield-star-sync-return.js:
  • test262/test/language/statements/class/async-gen-method/yield-star-sync-throw.js:
  • test262/test/language/statements/class/elements/async-gen-private-method-static/yield-star-sync-return.js:
  • test262/test/language/statements/class/elements/async-gen-private-method-static/yield-star-sync-throw.js:
  • test262/test/language/statements/class/elements/async-gen-private-method/yield-star-sync-return.js:
  • test262/test/language/statements/class/elements/async-gen-private-method/yield-star-sync-throw.js:
  • test262/test/language/statements/class/elements/field-declaration.js: Added.

(C):

  • test262/test/language/statements/class/elements/fields-anonymous-function-length.js:
  • test262/test/language/statements/class/elements/private-method-referenced-from-static-method.js:
  • test262/test/language/statements/class/subclass/bound-function.js: Removed.
  • test262/test/language/statements/class/subclass/class-definition-superclass-generator.js: Removed.
  • test262/test/language/statements/class/subclass/superclass-arrow-function.js: Added.

(fn):
(A):
(C):

  • test262/test/language/statements/class/subclass/superclass-async-function.js: Added.

(async fn):
(A):
(bound):
(C):

  • test262/test/language/statements/class/subclass/superclass-async-generator-function.js: Added.

(async fn):
(A):
(bound):
(async bind):

  • test262/test/language/statements/class/subclass/superclass-bound-function.js: Added.

(bound):

  • test262/test/language/statements/class/subclass/superclass-generator-function.js: Added.

(fn):
(A):
(bound):
(C):

  • test262/test262-Revision.txt:
12:16 PM Changeset in webkit [261786] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Add missing is<RenderTableSection> check.

Unreviewed.

  • layout/Verification.cpp:

(WebCore::Layout::outputMismatchingBlockBoxInformationIfNeeded):

12:13 PM Changeset in webkit [261785] by aestes@apple.com
  • 14 edits
    2 adds in trunk

REGRESSION (r260717): installmentConfiguration member is no longer available on ApplePayPaymentRequest
https://bugs.webkit.org/show_bug.cgi?id=211911
<rdar://problem/63236367>

Reviewed by Tim Horton.

Source/WebCore:

Prior to r260717, installmentConfiguration was a member of ApplePayRequestBase, making it
available on ApplePayRequest and ApplePayPaymentRequest. In r260717, it was mistakenly
moved to ApplePayRequest.

This change moves it back to ApplePayRequestBase, adds infrastructure for regression testing
ApplePayInstallmentConfiguration, and adds a regression test.

Test: http/tests/ssl/applepay/ApplePayInstallmentConfiguration.https.html

  • Modules/applepay/ApplePayInstallmentConfiguration.idl:
  • Modules/applepay/ApplePayRequestBase.cpp:

(WebCore::convertAndValidate):
(WebCore::finishConverting): Deleted.

  • Modules/applepay/ApplePayRequestBase.idl:
  • Modules/applepay/PaymentInstallmentConfiguration.mm:

(WebCore::fromDecimalNumber):
(WebCore::applePaySetupFeatureType):
(WebCore::PaymentInstallmentConfiguration::applePayInstallmentConfiguration const):

  • Modules/applepay/PaymentInstallmentConfigurationWebCore.h:
  • Modules/applepay/paymentrequest/ApplePayRequest.idl:
  • testing/MockPaymentCoordinator.cpp:

(WebCore::MockPaymentCoordinator::showPaymentUI):

  • testing/MockPaymentCoordinator.h:
  • testing/MockPaymentCoordinator.idl:

Source/WebKit:

  • Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:

(IPC::ArgumentCoder<ApplePaySessionPaymentRequest>::encode):
(IPC::ArgumentCoder<ApplePaySessionPaymentRequest>::decode):
(IPC::finishDecoding): Deleted.
(IPC::finishEncoding): Deleted.

LayoutTests:

  • http/tests/ssl/applepay/ApplePayInstallmentConfiguration.https-expected.txt: Added.
  • http/tests/ssl/applepay/ApplePayInstallmentConfiguration.https.html: Added.
10:10 AM Changeset in webkit [261784] by Alan Bujtas
  • 4 edits
    2 adds in trunk

[LFC][TFC] Ignore table padding when borders are collapsed
https://bugs.webkit.org/show_bug.cgi?id=211984

Reviewed by Antti Koivisto.

Source/WebCore:

Table padding has no room left when the table border is collapsed with the inner table elements.

Test: fast/layoutformattingcontext/table-simple-border-collapse-with-padding.html

  • layout/Verification.cpp:

(WebCore::Layout::outputMismatchingBlockBoxInformationIfNeeded):

  • layout/layouttree/LayoutBox.cpp:

(WebCore::Layout::Box::isPaddingApplicable const):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-border-collapse-with-padding-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-border-collapse-with-padding.html: Added.
9:24 AM Changeset in webkit [261783] by dbates@webkit.org
  • 5 edits in trunk/LayoutTests

Make editing/spelling/editing-word-with-marker-2.html test what it claims and make it work on iOS
https://bugs.webkit.org/show_bug.cgi?id=211802

Reviewed by Darin Adler.

Went back and looked at the originally written version of this test that was added in r70826
and brought back the missing "insert whitespace after misspelling" sub-test. While I am here,
I also simplified the test and made the test work on iOS by using UIHelper. I also fixed some
idiosyncrasies that were introduced in r169687 and did other modernizations.

The fix for iOS was simple: just enable internals.setContinuousSpellCheckingEnabled() + use UIHelper
to activate the textarea + blur the textarea on reset (for maximal code reuse). I didn't enable this
via the WKTR option spellCheckingDots because this test should be capable of running in DumpRenderTree
though we don't actually run DumpRenderTree for iOS on any bots. So, I did this largely for just for me.

I removed the use of editing commands to clear the textarea in favor of just setting the element's
value attribute because it's simpler and exercises less code in the engine, which I hope will reduce
future flakiness + the purpose of the test is to test how a spelling marker is updated not an exercise
on how to clear a textarea using editing commands. That kind of exercise is expected to be covered
by dedicated editing tests, though I haven't checked that they exist, but would be suprised if they
didn't.

  • editing/spelling/editing-word-with-marker-2-expected.txt:
  • editing/spelling/editing-word-with-marker-2.html:
  • platform/ios-wk1/TestExpectations: Unskip.
  • platform/ios-wk2/TestExpectations: Ditto.
8:27 AM Changeset in webkit [261782] by Alan Bujtas
  • 3 edits
    2 adds in trunk

[LFC][TFC] Take vertical spacing into account when setting the height of a cell with rowspan
https://bugs.webkit.org/show_bug.cgi?id=211976

Reviewed by Antti Koivisto.

Source/WebCore:

When a cell spans over multiple rows, the height of the cell includes the vertical spacing between those spanned rows as well.

Test: fast/layoutformattingcontext/table-simple-rowspan-with-spacing.html

  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::setUsedGeometryForCells):

LayoutTests:

  • fast/layoutformattingcontext/table-simple-rowspan-with-spacing-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-rowspan-with-spacing.html: Added.
2:21 AM Changeset in webkit [261781] by yurys@chromium.org
  • 3 edits in trunk/Source/WebKit

[GTK] Do not leak pages created by window.open
https://bugs.webkit.org/show_bug.cgi?id=211970

Reviewed by Carlos Garcia Campos.

Previously webkitWebViewCreateNewPage created unbalanced refence to WebPageProxy and returned
it as a raw pointer. That raw pointer was later wrapped in a RefPtr in WebKitUIClient.
This change ensures that all refs are balanced by returnin RefPtr instead of
a raw pointer.

  • UIProcess/API/glib/WebKitWebView.cpp:

(webkitWebViewCreateNewPage):

  • UIProcess/API/glib/WebKitWebViewPrivate.h:
1:24 AM Changeset in webkit [261780] by ysuzuki@apple.com
  • 88 edits in trunk

[JSC] Make OutOfMemory error as instance of RangeError
https://bugs.webkit.org/show_bug.cgi?id=211952

Reviewed by Mark Lam.

JSTests:

  • ChakraCore/test/Error/outofmem.baseline-jsc:
  • es6/String.prototype_methods_String.prototype.padEnd.js:

(TestMemoryLimits):

  • es6/String.prototype_methods_String.prototype.padStart.js:

(TestMemoryLimits):

  • slowMicrobenchmarks/function-constructor-with-huge-strings.js:
  • stress/array-join-on-strings-need-overflow-checks.js:
  • stress/big-wasm-memory-grow-no-max.js:

(test):

  • stress/big-wasm-memory-grow.js:

(test):

  • stress/big-wasm-memory.js:

(test):

  • stress/bigint-exponential-oom.js:

(shouldThrow):

  • stress/bigint-int32-min-shift.js:

(shouldThrow):

  • stress/check-symbol-description-oom.js:
  • stress/constructFunctionSkippingEvalEnabledCheck-should-throw-out-of-memory-error.js:
  • stress/intl-canonicalize-locale-list-error-oom.js:

(shouldThrow):

  • stress/joined-strings-should-not-exceed-max-string-length.js:
  • stress/js-fixed-array-out-of-memory.js:

(test):

  • stress/json-stringified-overflow-2.js:

(catch):

  • stress/json-stringified-overflow.js:

(catch):

  • stress/json-stringify-string-builder-overflow.js:
  • stress/missing-exception-check-in-JSValue-toWTFStringSlowCase.js:
  • stress/missing-exception-check-in-array-prototype-fastJoin.js:
  • stress/missing-exception-check-in-canonicalizeLocaleList.js:
  • stress/missing-exception-check-in-json-stringifier-gap.js:
  • stress/missing-exception-check-in-string-compare.js:
  • stress/missing-exception-check-in-string-greater-than-compare.js:
  • stress/missing-exception-check-in-string-greater-than-or-equal-compare.js:
  • stress/missing-exception-check-in-string-lastIndexOf.js:
  • stress/missing-exception-check-in-string-less-than-compare.js:
  • stress/missing-exception-check-in-string-less-than-or-equal-compare.js:
  • stress/missing-exception-check-in-string-toLower.js:
  • stress/missing-exception-check-in-string-toUpper.js:
  • stress/new_array_with_spread-should-cap-array-size-to-MIN_ARRAY_STORAGE_CONSTRUCTION_LENGTH.js:
  • stress/out-of-memory-while-constructing-BytecodeGenerator.js:
  • stress/regexp-prototype-exec-on-too-long-rope.js:
  • stress/regexp-prototype-match-on-too-long-rope.js:
  • stress/regexp-prototype-test-on-too-long-rope.js:
  • stress/regress-169783.js:

(doTest):

  • stress/regress-178385.js:
  • stress/regress-178386.js:
  • stress/regress-185888.js:
  • stress/regress-189132.js:
  • stress/regress-190187.js:
  • stress/regress-191563.js:
  • stress/scoped-arguments-table-should-be-tolerant-for-oom.js:

(i.canThrow):

  • stress/string-16bit-repeat-overflow.js:
  • stress/string-overflow-createError-builder.js:
  • stress/string-overflow-createError-fit.js:
  • stress/string-overflow-createError.js:
  • stress/string-prototype-charCodeAt-on-too-long-rope.js:
  • stress/string-prototype-replace-should-throw-out-of-memory-error-when-using-too-much-memory.js:
  • stress/switch-string-oom.js:

(testLowerTiers):
(testFTL):

  • stress/test-exception-assert-in-ExceptionHelpers-createError.js:
  • stress/test-out-of-memory.js:
  • stress/typed-array-subarray-can-throw-oom-error.js:

(get bar):

  • wasm/regress/wasm-memory-requested-more-than-MAX_ARRAY_BUFFER_SIZE-2.js:
  • wasm/regress/wasm-memory-requested-more-than-MAX_ARRAY_BUFFER_SIZE.js:

Source/JavaScriptCore:

The spec sometimes requires "check parameters and throw RangeError" before allocating an object.
But we are just allocating an object and throwing an out-of-memory error since wrong parameter will
cause out-of-memory. If out-of-memory error is RangeError, then we can keep our current behavior while
we can make us spec compliant. And note that out-of-memory error is RangeError in SpiderMonkey and V8.

This patch makes out-of-memory error as RangeError instead of Error. We also fix @throwOutOfMemoryError
in builtin code: the previous thrown errors are not marked as out-of-memory error.

  • bytecode/BytecodeList.rb:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitThrowStaticError):
(JSC::BytecodeGenerator::emitThrowReferenceError):
(JSC::BytecodeGenerator::emitThrowTypeError):
(JSC::BytecodeGenerator::emitThrowRangeError):
(JSC::BytecodeGenerator::emitThrowOutOfMemoryError):

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::RegExpNode::emitBytecode):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_throwTypeError):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_throwRangeError):

  • dfg/DFGOperations.cpp:
  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/Error.cpp:

(JSC::createError):
(JSC::createOutOfMemoryError):

  • runtime/Error.h:
  • runtime/ErrorType.cpp:

(JSC::errorTypeName):
(WTF::printInternal):

  • runtime/ErrorType.h: We introduced ErrorTypeWithExtension separately from ErrorType to keep ErrorType one-on-one to spec-specified error types.

LayoutTests:

  • inspector/debugger/no-pause-out-of-memory-exception-expected.txt:
  • js/array-join-expected.txt:
  • js/dom/concat-large-strings-crash-expected.txt:
  • js/dom/concat-large-strings-crash2-expected.txt:
  • js/dom/script-tests/string-replacement-outofmemory.js:
  • js/dom/string-concatenate-outofmemory-expected.txt:
  • js/dom/string-replacement-outofmemory-expected.txt:
  • js/large-expressions-expected.txt:
  • js/resources/string-concatenate-outofmemory.js:
  • js/script-tests/array-join.js:
  • js/script-tests/stack-overflow-regexp.js:

(shouldThrow.recursiveCall):
(shouldThrow):

  • js/script-tests/string-padend.js:
  • js/script-tests/string-padstart.js:
  • js/script-tests/string-repeat.js:
  • js/script-tests/stringimpl-to-jsstring-on-large-strings-1.js:
  • js/stack-overflow-regexp-expected.txt:
  • js/string-padend-expected.txt:
  • js/string-padstart-expected.txt:
  • js/string-repeat-expected.txt:
  • js/stringimpl-to-jsstring-on-large-strings-1-expected.txt:

May 15, 2020:

10:45 PM Changeset in webkit [261779] by Lauro Moura
  • 4 edits in trunk/Tools

[GTK][WPE] Add default initialization of WebsiteDataStore to WebKitTestRunner after r261758
https://bugs.webkit.org/show_bug.cgi?id=211977

As GTK/WPE does not explicitly create WebSiteDataStore for the tests,
assign the default one.

Not sure if this is the correct fix, but should allow running tests
again.

Reviewed by Žan Doberšek.

  • WebKitTestRunner/TestController.cpp: Add GTK/WPE guards.
  • WebKitTestRunner/gtk/TestControllerGtk.cpp:

(WTR::TestController::platformInitializeDataStore): Use default
WebsiteDataStore.

  • WebKitTestRunner/wpe/TestControllerWPE.cpp:

(WTR::TestController::platformInitializeDataStore): Use default
websiteDataStore.

9:32 PM Changeset in webkit [261778] by Antti Koivisto
  • 3 edits
    2 adds in trunk

Nullptr crash in MediaQueryMatcher::evaluateAll
https://bugs.webkit.org/show_bug.cgi?id=211963
<rdar://problem/62850977>

Reviewed by Brent Fulgham.

Source/WebCore:

Test: fast/media/media-query-list-mutation.html

  • css/MediaQueryMatcher.cpp:

(WebCore::MediaQueryMatcher::evaluateAll):

Copy the vector before iterating.

LayoutTests:

  • fast/media/media-query-list-mutation-expected.txt: Added.
  • fast/media/media-query-list-mutation.html: Added.
9:09 PM Changeset in webkit [261777] by Jack Lee
  • 3 edits
    2 adds in trunk

Nullptr crash in WebCore::Node::treeScope() when processing nested list insertion commands.
https://bugs.webkit.org/show_bug.cgi?id=211964
<rdar://problem/63224871>

Reviewed by Geoffrey Garen.

Source/WebCore:

Load event may fire in fixOrphanedListChild() and change the node tree. In doApplyForSingleParagraph check for
disconnected node returned by fixOrphanedListChild() and bail out.

Test: editing/inserting/nested-list-insertion-crash.html

  • editing/InsertListCommand.cpp:

(WebCore::InsertListCommand::doApplyForSingleParagraph):

LayoutTests:

Added a regression test for the crash.

  • editing/inserting/nested-list-insertion-crash-expected.txt: Added.
  • editing/inserting/nested-list-insertion-crash.html: Added.
8:45 PM Changeset in webkit [261776] by commit-queue@webkit.org
  • 57 edits in trunk

Use enum serialization instead of casting to/from uint32_t
https://bugs.webkit.org/show_bug.cgi?id=211885
Source/WebCore:

<rdar://problem/60106629> and <rdar://problem/60107663>

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

This doesn't change anything except make stricter checks at IPC boundaries.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::visiblePositionRangeForLine const):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityModifySelection:increase:]):

  • editing/EditingBehavior.h:
  • editing/Editor.cpp:

(WebCore::Editor::shouldSmartDelete):
(WebCore::Editor::deleteWithDirection):
(WebCore::Editor::misspelledWordAtCaretOrRange const):
(WebCore::Editor::guessesForMisspelledOrUngrammatical):
(WebCore::Editor::markMisspellingsAfterTypingToWord):
(WebCore::Editor::markAndReplaceFor):
(WebCore::Editor::handleAcceptedCandidate):

  • editing/EditorCommand.cpp:

(WebCore::executeDeleteBackward):
(WebCore::executeDeleteBackwardByDecomposingPreviousCharacter):
(WebCore::executeDeleteForward):
(WebCore::executeDeleteToBeginningOfLine):
(WebCore::executeDeleteToBeginningOfParagraph):
(WebCore::executeDeleteToEndOfLine):
(WebCore::executeDeleteToEndOfParagraph):
(WebCore::executeDeleteWordBackward):
(WebCore::executeDeleteWordForward):
(WebCore::executeForwardDelete):
(WebCore::executeMoveBackward):
(WebCore::executeMoveBackwardAndModifySelection):
(WebCore::executeMoveDown):
(WebCore::executeMoveDownAndModifySelection):
(WebCore::executeMoveForward):
(WebCore::executeMoveForwardAndModifySelection):
(WebCore::executeMoveLeft):
(WebCore::executeMoveLeftAndModifySelection):
(WebCore::executeMoveRight):
(WebCore::executeMoveRightAndModifySelection):
(WebCore::executeMoveToBeginningOfDocument):
(WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
(WebCore::executeMoveToBeginningOfLine):
(WebCore::executeMoveToBeginningOfLineAndModifySelection):
(WebCore::executeMoveToBeginningOfParagraph):
(WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
(WebCore::executeMoveToBeginningOfSentence):
(WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
(WebCore::executeMoveToEndOfDocument):
(WebCore::executeMoveToEndOfDocumentAndModifySelection):
(WebCore::executeMoveToEndOfSentence):
(WebCore::executeMoveToEndOfSentenceAndModifySelection):
(WebCore::executeMoveToEndOfLine):
(WebCore::executeMoveToEndOfLineAndModifySelection):
(WebCore::executeMoveToEndOfParagraph):
(WebCore::executeMoveToEndOfParagraphAndModifySelection):
(WebCore::executeMoveParagraphBackwardAndModifySelection):
(WebCore::executeMoveParagraphForwardAndModifySelection):
(WebCore::executeMoveUp):
(WebCore::executeMoveUpAndModifySelection):
(WebCore::executeMoveWordBackward):
(WebCore::executeMoveWordBackwardAndModifySelection):
(WebCore::executeMoveWordForward):
(WebCore::executeMoveWordForwardAndModifySelection):
(WebCore::executeMoveWordLeft):
(WebCore::executeMoveWordLeftAndModifySelection):
(WebCore::executeMoveWordRight):
(WebCore::executeMoveWordRightAndModifySelection):
(WebCore::executeMoveToLeftEndOfLine):
(WebCore::executeMoveToLeftEndOfLineAndModifySelection):
(WebCore::executeMoveToRightEndOfLine):
(WebCore::executeMoveToRightEndOfLineAndModifySelection):
(WebCore::executeSelectLine):
(WebCore::executeSelectParagraph):
(WebCore::executeSelectSentence):
(WebCore::executeSelectWord):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::FrameSelection):
(WebCore::FrameSelection::willBeModified):
(WebCore::FrameSelection::modifyExtendingRight):
(WebCore::FrameSelection::modifyExtendingForward):
(WebCore::FrameSelection::modifyMovingRight):
(WebCore::FrameSelection::modifyMovingForward):
(WebCore::FrameSelection::modifyExtendingLeft):
(WebCore::FrameSelection::modifyExtendingBackward):
(WebCore::FrameSelection::modifyMovingLeft):
(WebCore::FrameSelection::modifyMovingBackward):
(WebCore::isBoundary):
(WebCore::FrameSelection::textSelectionIntent):
(WebCore::textSelectionWithDirectionAndGranularity):
(WebCore::FrameSelection::modify):
(WebCore::FrameSelection::clear):
(WebCore::FrameSelection::willBeRemovedFromFrame):
(WebCore::FrameSelection::updateAppearance):
(WebCore::FrameSelection::wordSelectionContainingCaretSelection):
(WebCore::FrameSelection::rangeByAlteringCurrentSelection const):

  • editing/FrameSelection.h:
  • editing/TextGranularity.h:

(): Deleted.

  • editing/TypingCommand.cpp:

(WebCore::editActionForTypingCommand):
(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):
(WebCore::TypingCommand::insertTextRunWithoutNewlines):
(WebCore::TypingCommand::insertLineBreak):
(WebCore::TypingCommand::insertParagraphSeparator):
(WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
(WebCore::TypingCommand::deleteSelection):

  • editing/TypingCommand.h:
  • editing/VisibleSelection.cpp:

(WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):

  • editing/VisibleSelection.h:
  • editing/VisibleUnits.cpp:

(WebCore::directionIsDownstream):
(WebCore::atBoundaryOfGranularity):
(WebCore::withinTextUnitOfGranularity):
(WebCore::nextWordBoundaryInDirection):
(WebCore::nextSentenceBoundaryInDirection):
(WebCore::nextParagraphBoundaryInDirection):
(WebCore::positionOfNextBoundaryOfGranularity):
(WebCore::enclosingTextUnitOfGranularity):
(WebCore::charactersAroundPosition):
(WebCore::wordRangeFromPosition):
(WebCore::closestWordBoundaryForPosition):
(WebCore::rangeExpandedByCharactersInDirectionAtWordBoundary):
(WebCore::wordBoundaryForPositionWithoutCrossingLine):

  • editing/cocoa/DataDetection.mm:

(WebCore::DataDetection::detectItemAroundHitTestResult):

  • editing/cocoa/DictionaryLookup.mm:
  • editing/mac/DictionaryLookupLegacy.mm:
  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::create):

  • loader/FrameLoaderClient.h:

(WebCore::FrameLoaderClient::webGLPolicyForURL const):
(WebCore::FrameLoaderClient::resolveWebGLPolicyForURL const):
(): Deleted.

  • loader/FrameLoaderTypes.h:
  • page/ContextMenuController.cpp:

(WebCore::ContextMenuController::contextMenuItemSelected):

  • page/DOMSelection.cpp:

(WebCore::DOMSelection::modify):

  • page/DragController.cpp:

(WebCore::DragController::concludeEditDrag):

  • page/EventHandler.cpp:

(WebCore::EventHandler::updateSelectionForMouseDownDispatchingSelectStart):
(WebCore::EventHandler::selectClosestWordFromHitTestResult):
(WebCore::EventHandler::selectClosestContextualWordFromMouseEvent):
(WebCore::EventHandler::selectClosestContextualWordOrLinkFromMouseEvent):
(WebCore::EventHandler::handleMousePressEventTripleClick):
(WebCore::EventHandler::handleMousePressEventSingleClick):
(WebCore::EventHandler::updateSelectionForMouseDrag):
(WebCore::setInitialKeyboardSelection):
(WebCore::handleKeyboardSelectionMovement):

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::isOverTextInsideFormControlElement const):

Source/WebKit:

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

  • Scripts/webkit/messages.py:
  • Shared/DocumentEditingContext.h:
  • Shared/ios/GestureTypes.h:
  • UIProcess/API/C/WKAPICast.h:

(WebKit::toWebGLLoadPolicy):
(WebKit::toAPI):

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::toWebCoreWebGLLoadPolicy):
(WebKit::NavigationState::NavigationClient::webGLLoadPolicy const):
(WebKit::NavigationState::NavigationClient::resolveWebGLLoadPolicy const):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::webGLPolicyForURL):
(WebKit::WebPageProxy::resolveWebGLPolicyForURL):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView selectForWebView:]):
(toUIWKSelectionFlags):
(toSelectionFlags):
(toWKTextGranularity):
(toWKSelectionDirection):
(selectionChangedWithGesture):
(selectionChangedWithTouch):
(-[WKContentView changeSelectionWithGestureAt:withGesture:withState:withFlags:]):
(-[WKContentView changeSelectionWithTouchAt:withSelectionTouch:baseIsStart:withFlags:]):
(-[WKContentView changeSelectionWithTouchesFrom:to:withGesture:withState:]):
(-[WKContentView selectWordForReplacement]):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::gestureCallback):
(WebKit::WebPageProxy::touchesCallback):
(WebKit::WebPageProxy::selectWithGesture):
(WebKit::WebPageProxy::updateSelectionWithTouches):
(WebKit::WebPageProxy::selectTextWithGranularityAtPoint):
(WebKit::WebPageProxy::selectPositionAtBoundaryWithDirection):
(WebKit::WebPageProxy::moveSelectionAtBoundaryWithDirection):
(WebKit::WebPageProxy::selectWithTwoTouches):
(WebKit::WebPageProxy::extendSelection):
(WebKit::WebPageProxy::requestRectsForGranularityWithSelectionOffset):

  • WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:

(-[WKDOMRange rangeByExpandingToWordBoundaryByCharacters:inDirection:]):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::webGLPolicyForURL const):
(WebKit::WebFrameLoaderClient::resolveWebGLPolicyForURL const):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::webGLPolicyForURL):
(WebKit::WebPage::resolveWebGLPolicyForURL):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::getPlatformEditorState const):
(WebKit::WebPage::getSelectionContext):
(WebKit::WebPage::selectWithGesture):
(WebKit::rangeAtWordBoundaryForPosition):
(WebKit::WebPage::updateSelectionWithTouches):
(WebKit::WebPage::selectWithTwoTouches):
(WebKit::WebPage::extendSelection):
(WebKit::WebPage::selectWordBackward):
(WebKit::WebPage::moveSelectionByOffset):
(WebKit::WebPage::getRectsForGranularityWithSelectionOffset):
(WebKit::WebPage::selectPositionAtBoundaryWithDirection):
(WebKit::WebPage::moveSelectionAtBoundaryWithDirection):
(WebKit::WebPage::rangeForGranularityAtPoint):
(WebKit::WebPage::selectTextWithGranularityAtPoint):
(WebKit::WebPage::beginSelectionInDirection):
(WebKit::WebPage::updateSelectionWithExtentPointAndBoundary):
(WebKit::WebPage::requestDictationContext):
(WebKit::WebPage::applyAutocorrectionInternal):
(WebKit::WebPage::autocorrectionContext):
(WebKit::dataDetectorLinkPositionInformation):
(WebKit::moveByGranularityRespectingWordBoundary):
(WebKit::WebPage::requestDocumentEditingContext):

  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::webGLPolicyForURL):
(WebKit::WebPage::resolveWebGLPolicyForURL):

Source/WebKitLegacy/ios:

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

  • WebCoreSupport/WebFrameIOS.mm:

(-[WebFrame aggressivelyExpandSelectionToWordContainingCaretSelection]):
(-[WebFrame setSelectionGranularity:]):

  • WebCoreSupport/WebVisiblePosition.mm:

(toTextGranularity):
(toSelectionDirection):

Source/WebKitLegacy/mac:

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

  • DOM/DOMUIKitExtensions.mm:

(-[DOMRange move:inDirection:]):
(-[DOMRange extend:inDirection:]):

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::webGLPolicyForURL const):
(WebFrameLoaderClient::resolveWebGLPolicyForURL const):

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _canSmartCopyOrDelete]):

  • WebView/WebTextCompletionController.mm:

(-[WebTextCompletionController doCompletion]):

Tools:

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

  • DumpRenderTree/ios/AccessibilityUIElementIOS.mm:

(AccessibilityUIElement::increaseTextSelection):
(AccessibilityUIElement::decreaseTextSelection):

  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::increaseTextSelection):
(WTR::AccessibilityUIElement::decreaseTextSelection):

7:14 PM Changeset in webkit [261775] by Simon Fraser
  • 22 edits in trunk/Source/WebCore

Rename the mapLocalToContainer() container argument, since it's not just used for repaint
https://bugs.webkit.org/show_bug.cgi?id=211974

Reviewed by Zalan Bujtas.

mapLocalToContainer() is a generic geometry mapping function, and not just used for repaint,
so rename the "repaintContainer" argument to "ancestorContainer".

Also fix some weirdly named variables in RenderMultiColumnFlow.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::mapLocalToContainer const):

  • rendering/RenderBox.h:
  • rendering/RenderFragmentedFlow.cpp:

(WebCore::RenderFragmentedFlow::mapLocalToContainer const):

  • rendering/RenderFragmentedFlow.h:
  • rendering/RenderInline.cpp:

(WebCore::RenderInline::mapLocalToContainer const):
(WebCore::RenderInline::pushMappingToContainer const):

  • rendering/RenderMultiColumnFlow.cpp:

(WebCore::RenderMultiColumnFlow::addFragmentToThread):
(WebCore::RenderMultiColumnFlow::mapFromFlowToFragment const):
(WebCore::RenderMultiColumnFlow::physicalTranslationOffsetFromFlowToFragment const):
(WebCore::RenderMultiColumnFlow::physicalTranslationFromFlowToFragment const):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::mapLocalToContainer const):
(WebCore::RenderObject::localToContainerQuad const):
(WebCore::RenderObject::localToContainerPoint const):

  • rendering/RenderObject.h:
  • rendering/RenderView.cpp:

(WebCore::RenderView::mapLocalToContainer const):

  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::mapLocalToContainer const):

  • rendering/svg/RenderSVGForeignObject.h:
  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::mapLocalToContainer const):

  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGModelObject.cpp:

(WebCore::RenderSVGModelObject::mapLocalToContainer const):

  • rendering/svg/RenderSVGModelObject.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::mapLocalToContainer const):

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::mapLocalToContainer const):

  • rendering/svg/RenderSVGText.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::mapLocalToContainer):

  • rendering/svg/SVGRenderSupport.h:
7:07 PM Changeset in webkit [261774] by Simon Fraser
  • 3 edits
    2 adds in trunk

REGRESSION (r249091): Can't click on a video in the second column of a paginated web view
https://bugs.webkit.org/show_bug.cgi?id=211973
<rdar://problem/61418775>

Reviewed by Zalan Bujtas.

Source/WebCore:

In r249091 I made clip layer computation use offsetFromAncestor() by default, but this turns
out to give different behavior from mapping via renderers in columns.

The bug was that accumulateOffsetTowardsAncestor() would map through the
RenderMultiColumnFlow columns if the ancestorLayer was the one that was using columns,
but mapping via renderers only maps through columns if converting to some ancestor of
the columnated renderer.

I did not investigate why this only affects video.

Test: fast/multicol/clipped-video-in-second-column.html

  • rendering/RenderLayer.cpp:

(WebCore::accumulateOffsetTowardsAncestor):
(WebCore::RenderLayer::calculateClipRects const):

LayoutTests:

  • fast/multicol/clipped-video-in-second-column-expected.html: Added.
  • fast/multicol/clipped-video-in-second-column.html: Added.
6:23 PM Changeset in webkit [261773] by ysuzuki@apple.com
  • 3 edits
    1 add in trunk

[JSC] getFunctionRealm should not use recursion
https://bugs.webkit.org/show_bug.cgi?id=211965
<rdar://problem/63268287>

Reviewed by Saam Barati.

JSTests:

  • stress/get-function-realm-not-doing-recursion.js: Added.

(canThrow):
(const.emptyFunction):

Source/JavaScriptCore:

This patch avoids using recursion in getFunctionRealm to avoid stack-overflow.

  • runtime/InternalFunction.cpp:

(JSC::getFunctionRealm):

6:17 PM Changeset in webkit [261772] by Devin Rousso
  • 5 edits
    2 adds in trunk

Web Inspector: Fails to pretty-print a particular CSS file
https://bugs.webkit.org/show_bug.cgi?id=211930

Reviewed by Joseph Pecoraro.

Source/WebInspectorUI:

  • UserInterface/Workers/Formatter/CSSFormatter.js:

(CSSFormatter.prototype._format):
Keep a stack of special sequences (e.g. ", ', /*, etc.), only outputting the text in
between the start and end of the sequence when the stack is empty. Ignore all other special
sequences when in a comma sequence. Add proper checks for if the star/end is escaped.
Drive-by: minor refactor so that the arrow functions are created outside the loop.

LayoutTests:

  • inspector/formatting/formatting-css.html:
  • inspector/formatting/formatting-css-expected.txt:
  • inspector/formatting/resources/css-tests/url.css: Added.
  • inspector/formatting/resources/css-tests/url-expected.css: Added.
5:43 PM Changeset in webkit [261771] by Alan Coon
  • 1 copy in tags/Safari-610.1.13

Tag Safari-610.1.13.

5:03 PM Changeset in webkit [261770] by Ryan Haddad
  • 3 edits in trunk/LayoutTests

media/video-poster-set-after-playback.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=211856

Unreviewed test gardening.

  • platform/ios/TestExpectations: Mark test as flaky.
  • platform/mac/TestExpectations: Ditto.
4:57 PM Changeset in webkit [261769] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

OES_texture_float internal format conversion must depend on WEBGL_color_buffer_float
https://bugs.webkit.org/show_bug.cgi?id=211971

Patch by Kenneth Russell <kbr@chromium.org> on 2020-05-15
Reviewed by Dean Jackson.

Only adjust the internal formats of textures created for the WebGL
1.0 OES_texture_float extension if the WEBGL_color_buffer_float
extension has been enabled.

Covered by the WebGL 1.0 OES_texture_float conformance tests when
run on iOS with another forthcoming fix to ANGLE which will enable
the OES_texture_float extension on that platform.

  • platform/graphics/angle/ExtensionsGLANGLE.cpp:

(WebCore::ExtensionsGLANGLE::ensureEnabled):
(WebCore::ExtensionsGLANGLE::adjustWebGL1TextureInternalFormat):

  • platform/graphics/angle/ExtensionsGLANGLE.h:
  • platform/graphics/angle/GraphicsContextGLANGLE.cpp:

(WebCore::GraphicsContextGLOpenGL::texImage2DDirect):

4:43 PM Changeset in webkit [261768] by Ryan Haddad
  • 2 edits in trunk/Tools

[iOS EWS] TestWebKitAPI.WKWebsiteDataStore.RemoveAndFetchData is failing
https://bugs.webkit.org/show_bug.cgi?id=208451

Unreviewed test gardening.

  • TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:

(TestWebKitAPI::TEST): Re-enable the test for iOS.

4:26 PM Changeset in webkit [261767] by Oriol Brufau
  • 4 edits
    2 adds in trunk

[css-grid] Treat percentages as auto for the minimum contribution
https://bugs.webkit.org/show_bug.cgi?id=195967

Reviewed by Manuel Rego Casasnovas.

LayoutTests/imported/w3c:

Import WPT test.

  • web-platform-tests/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages-expected.txt: Added.
  • web-platform-tests/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages.html: Added.
  • web-platform-tests/css/css-grid/grid-definition/w3c-import.log:

Source/WebCore:

The minimum contribution of a grid item is the outer size resulting from
the minimum size if the computed preferred size behaves as auto, or the
min-content contribution otherwise.

If the preferred size is a percentage, it should be resolved with
respect to the grid area, which depends on the minimum contribution
of the item. Thus the percentage is cyclic and behaves as auto.

Before this change, WebKit only checked whether the preferred size is
auto, not whether it behaves as auto. In fact this was according to
an older version of the spec, but it was changed in
https://github.com/w3c/csswg-drafts/issues/2367

Test: imported/w3c/web-platform-tests/css/css-grid/grid-definition/grid-minimum-contribution-with-percentages.html

Some cases in the test still fail due to bug 209461.

  • rendering/GridTrackSizingAlgorithm.cpp:

(WebCore::GridTrackSizingAlgorithmStrategy::minSizeForChild const):

3:39 PM Changeset in webkit [261766] by ggaren@apple.com
  • 2 edits in trunk/Tools

Update Sihui Liu's status to reviewer
https://bugs.webkit.org/show_bug.cgi?id=211966

Reviewed by Per Arne Vollan.

See email thread on webkit-reviewers on 5/7, "Reviewer nomination:
Sihui Liu".

  • Scripts/webkitpy/common/config/contributors.json:
3:32 PM Changeset in webkit [261765] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

TestWebKitAPI.WKHTTPCookieStore.Basic is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=211752

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

The ordering of cookiesDidChangeInCookieStore callbacks with regard to other callbacks isn't quite deterministic.
No problem. If the number of callbacks isn't what it is expected, wait until it is.
When I reproduce this test failure, I need to spin the run loop at max once to have it succeed, but the bots may take a few more run loop spins.
Spin until the number of callbacks is the expected value.

  • TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:

(runTestWithWebsiteDataStore):

2:55 PM Changeset in webkit [261764] by commit-queue@webkit.org
  • 11 edits in trunk

Make host parser fail on
https://bugs.webkit.org/show_bug.cgi?id=211901

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

LayoutTests/imported/w3c:

  • 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/url/url-constructor-expected.txt:
  • web-platform-tests/url/url-origin-expected.txt:
  • web-platform-tests/url/urltestdata.json:

Source/WTF:

This matches the behavior of Chrome and Firefox, and now the specification!
I updated the URL wpt data, and this introduces new PASSes.

  • wtf/URLParser.cpp:

(WTF::isC0Control):
(WTF::isForbiddenHostCodePoint):

2:40 PM Changeset in webkit [261763] by keith_miller@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix internal arm64e build.

  • dfg/DFGSpeculativeJIT.cpp:
2:32 PM Changeset in webkit [261762] by commit-queue@webkit.org
  • 6 edits in trunk

[iOS Simulator] TestWebKitAPI._WKDownload.Resume is a flaky crash
https://bugs.webkit.org/show_bug.cgi?id=211786

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

Source/WebCore/PAL:

  • pal/spi/cf/CFNetworkSPI.h:

Use CFNetwork SPI to stop it from unlinking the downloaded file after resuming then completing.

Source/WebKit:

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(-[WKNetworkSessionDelegate URLSession:downloadTask:didResumeAtOffset:expectedTotalBytes:]):

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/Download.mm:

(TEST):
Add a short sleep (<1/10s) to make this test so it would've almost always failed without this fix.
Checking the file immediately usually succeeded, but waiting a few run loop iterations revealed that CFNetwork
was deleting resumed then finished downloads.

2:31 PM Changeset in webkit [261761] by commit-queue@webkit.org
  • 4 edits in trunk

Regression (iOS 13.4, r249142): WKWebView.loading is never reset after a Back navigation in an iframe
https://bugs.webkit.org/show_bug.cgi?id=211449

Patch by Alex Christensen <achristensen@webkit.org> on 2020-05-15
Reviewed by Geoffrey Garen.

Source/WebKit:

Always call clearPendingAPIRequest in WebPageProxy::didStartProvisionalLoadForFrameShared.
r249142 regressed this and caused more "loading appears to continue forever" bugs fixed in r249890.
This should fix both, by removing the problematic half of r249142.

Covered by an API test.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::didStartProvisionalLoadForFrameShared):

Tools:

  • TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:

(-[LoadingObserver changesObserved]):
(-[LoadingObserver observeValueForKeyPath:ofObject:change:context:]):
(TEST):

2:27 PM Changeset in webkit [261760] by graouts@webkit.org
  • 2 edits in trunk/LayoutTests

Cursor should not update on a 20ms timer
https://bugs.webkit.org/show_bug.cgi?id=211884
<rdar://problem/63220368>

Unreviewed.

This is a mouse-specific test and should not be run on iOS.

  • platform/ios/TestExpectations:
2:04 PM Changeset in webkit [261759] by Jason_Lawrence
  • 2 edits in trunk/LayoutTests

[ iOS wk2 ] css2.1/20110323/replaced-intrinsic-ratio-001.htm is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209350

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
1:50 PM Changeset in webkit [261758] by Chris Dumez
  • 5 edits in trunk/Tools

Make sure we use current data store in WKTR's TestController
https://bugs.webkit.org/show_bug.cgi?id=211920

Reviewed by Alex Christensen.

Make sure we use current data store in WKTR's TestController. Currently, a lot of code
uses defaultDataStore(), even though the test may be using another data store (e.g. an
ephemeral one). I suspect this is contributing to test flakiness.

We now also make sure that TestController::websiteDataStore() returns the actual store
that will be used by the test when resetPreferencesToConsistentValues() is called.
Previously, it would not since it would get the store from the m_mainView and m_mainView
would only get initialized after calling resetPreferencesToConsistentValues(). To support
this, we now initialize a m_websiteDataStore member in platformInitializeDataStore(),
which gets called right before resetPreferencesToConsistentValues(). When
platformCreateWebView() gets called right after resetPreferencesToConsistentValues(),
it now simply relies on m_websiteDataStore instead of creating the data store at this
point.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
(WTR::TestController::clearServiceWorkerRegistrations):
(WTR::TestController::clearDOMCache):
(WTR::TestController::clearDOMCaches):
(WTR::TestController::hasDOMCache):
(WTR::TestController::domCacheSize):
(WTR::TestController::clearStatisticsDataForDomain):

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::invoke):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):

1:42 PM Changeset in webkit [261757] by keith_miller@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix internal fast tls build.

  • jit/AssemblyHelpers.cpp:
1:07 PM Changeset in webkit [261756] by graouts@webkit.org
  • 6 edits
    2 adds in trunk

[Web Animations] Animation with a single keyframe is not accelerated
https://bugs.webkit.org/show_bug.cgi?id=188730
<rdar://problem/43481113>

Reviewed by Dean Jackson.

Source/WebCore:

Test: webanimations/accelerated-animation-single-keyframe.html

Prior to attempting to run an accelerated effect, ensure that the KeyframeList passed to
RenderLayerModelObject::startAnimation() does not have implicit keyframes since eventually
GraphicsLayerCA::animationCanBeAccelerated() would be called and would reject a single-keyframe
animation. To do this, we use the same code used in Style::Resolver::keyframeStylesForAnimation()
which we refactor in the new KeyframeList::fillImplicitKeyframes() method.

  • animation/KeyframeEffect.cpp:

(WebCore::KeyframeEffect::copyPropertiesFromSource):
(WebCore::KeyframeEffect::applyPendingAcceleratedActions):

  • rendering/style/KeyframeList.cpp:

(WebCore::KeyframeList::hasImplicitKeyframes const):
(WebCore::KeyframeList::copyKeyframes):
(WebCore::zeroPercentKeyframe):
(WebCore::hundredPercentKeyframe):
(WebCore::KeyframeList::fillImplicitKeyframes):

  • rendering/style/KeyframeList.h:
  • style/StyleResolver.cpp:

(WebCore::Style::Resolver::keyframeStylesForAnimation):

LayoutTests:

Add a new test that runs a single-keyframe transform animation and checks that it runs accelerated.

  • webanimations/accelerated-animation-single-keyframe-expected.txt: Added.
  • webanimations/accelerated-animation-single-keyframe.html: Added.
12:39 PM Changeset in webkit [261755] by Ross Kirsling
  • 741 edits in trunk/Source/JavaScriptCore

[IWYU] Remove unnecessary includes from JSC implementation files
https://bugs.webkit.org/show_bug.cgi?id=211867

Reviewed by Keith Miller.

  • API/:
  • assembler/:
  • b3/:
  • bindings/:
  • builtins/BuiltinExecutables.cpp:
  • bytecode/:
  • bytecompiler/:
  • debugger/:
  • dfg/:
  • disassembler/:
  • ftl/:
  • heap/:
  • inspector/:
  • interpreter/:
  • jit/:
  • jsc.cpp:
  • llint/:
  • parser/:
  • profiler/:
  • runtime/:
  • testRegExp.cpp:
  • tools/:
  • wasm/:
  • yarr/:
12:24 PM Changeset in webkit [261754] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

-Wtype-limits warning spam from CCallHelpers.h
https://bugs.webkit.org/show_bug.cgi?id=211701

Patch by Michael Catanzaro <Michael Catanzaro> on 2020-05-15
Reviewed by Darin Adler.

Skip the problematic loops when TargetSize or NumberOfRegisters is 0 using constexpr if.
Solution suggested by Mark Lam.

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::setupStubArgs):
(JSC::CCallHelpers::clampArrayToSize):

12:02 PM Changeset in webkit [261753] by eric.carlson@apple.com
  • 3 edits in trunk/LayoutTests

media/video-poster-set-after-playback.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=211856
<rdar://problem/63194296>

Unreviewed test fix.

  • media/video-poster-set-after-playback-expected.txt:
  • media/video-poster-set-after-playback.html: Wait for Video display mode before

pausing to ensure there is a video frame.

11:45 AM Changeset in webkit [261752] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

The initial value of "transform-box" should be "view-box"
https://bugs.webkit.org/show_bug.cgi?id=211927

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2020-05-15
Reviewed by Simon Fraser.

Source/WebCore:

Specs: https://drafts.csswg.org/css-transforms/#transform-box.

Test: svg/transforms/svg-transform-box-initial.html

  • css/CSSProperties.json:
  • rendering/style/RenderStyle.h:

(WebCore::RenderStyle::initialTransformBox):

LayoutTests:

  • fast/css/transform-box-parsing-expected.txt:
  • fast/css/transform-box-parsing.html:
  • svg/transforms/svg-transform-box-initial-expected.html: Added.
  • svg/transforms/svg-transform-box-initial.html: Added.
11:33 AM Changeset in webkit [261751] by dino@apple.com
  • 4 edits in trunk/Source/ThirdParty/ANGLE

REGRESSION (r259589): Google Maps background layer fades out and back in
https://bugs.webkit.org/show_bug.cgi?id=210992

Patch by James Darpinian <James Darpinian> on 2020-05-14
Reviewed by Dean Jackson.

ANGLE rendering feedback loop detection was incorrect if a texture attached
to a framebuffer was also bound to an active texture unit, and then that texture
unit became inactive because a sampler uniform was set.

  • src/libANGLE/Context.cpp:

(gl::Context::onSamplerUniformChange):

  • src/libANGLE/State.cpp:

(gl::State::setTextureIndexInactive):

  • src/libANGLE/State.h:
11:33 AM Changeset in webkit [261750] by dino@apple.com
  • 539 edits
    265 adds
    19 deletes in trunk/Source/ThirdParty/ANGLE

Update ANGLE to 2020-03-27
https://bugs.webkit.org/show_bug.cgi?id=209689

Patch by Kenneth Russell <kbr@chromium.org> on 2020-04-06
Reviewed by Darin Adler.

Use update-angle.sh script by James Darpinian to roll ANGLE to
commit b387ce9389ede6a4ed3b831ab1b8187927fa295f in
https://chromium.googlesource.com/angle/angle .

changes.diff has been auto-updated with Apple's diffs relative to
upstream. No additional manual changes are made in this roll.
Long autogenerated file list omitted.

11:12 AM Changeset in webkit [261749] by Andres Gonzalez
  • 3 edits in trunk/Source/WebCore

Fix for crash in accessibility/mac/replace-text-with-range-on-webarea-element.html in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=211954

Reviewed by Chris Fleizach.

Fixes crash in isolated tree mode in accessibility/mac/replace-text-with-range-on-webarea-element.html.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::postTextStateChangeNotification): Check for null object before dereferencing.
(WebCore::AXObjectCache::rootWebArea): Reverted to returning an AXObject since it is not needed to return AXCoreObject.

  • accessibility/AXObjectCache.h:
10:10 AM Changeset in webkit [261748] by Alan Coon
  • 2 edits in branches/safari-610.1.13-branch/Source/WebKit

Cherry-pick r261719. rdar://problem/63278098

Regression(r261163) Causes crashes on builds without libwebrtc.dylib
https://bugs.webkit.org/show_bug.cgi?id=211924
<rdar://problem/63206792>

Reviewed by Jer Noble.

  • WebProcess/Network/NetworkProcessConnection.cpp: (WebKit::NetworkProcessConnection::NetworkProcessConnection):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261719 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9:44 AM Changeset in webkit [261747] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Remove debugging dataLogs in LinkBuffer::copyCompactAndLinkCode() for release builds.
https://bugs.webkit.org/show_bug.cgi?id=211961
<rdar://problem/63264848>

Reviewed by Keith Miller.

  • assembler/LinkBuffer.cpp:

(JSC::LinkBuffer::copyCompactAndLinkCode):

9:04 AM Changeset in webkit [261746] by Jason_Lawrence
  • 2 edits in trunk/LayoutTests

REGRESSION: [ iOS wk2 Debug ] multiple fast/text/international/system-language tests are flaky crashing - WTFCrashWithInfo - WebKit::ResourceLoadStatisticsDatabaseStore::openAndUpdateSchemaIfNecessary()
https://bugs.webkit.org/show_bug.cgi?id=211958

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
7:44 AM Changeset in webkit [261745] by Alan Bujtas
  • 7 edits
    1 add in trunk/Source/WebCore

[LFC][TFC] Move column and row balancing logic to a dedicated class
https://bugs.webkit.org/show_bug.cgi?id=211937

Reviewed by Antti Koivisto.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • layout/tableformatting/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::layoutInFlowContent):
(WebCore::Layout::TableFormattingContext::setUsedGeometryForRows):
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraSpace):
(WebCore::Layout::ColumnSpan::hasSpan): Deleted.
(WebCore::Layout::ColumnSpan::isSpanned): Deleted.
(WebCore::Layout::ColumnSpan::spanCount): Deleted.
(WebCore::Layout::ColumnSpan::startSpan): Deleted.
(WebCore::Layout::ColumnSpan::endSpan): Deleted.
(WebCore::Layout::ColumnSpan::index): Deleted.
(WebCore::Layout::ColumnSpan::size): Deleted.
(WebCore::Layout::ColumnSpan::spacing): Deleted.
(WebCore::Layout::RowSpan::hasSpan): Deleted.
(WebCore::Layout::RowSpan::isSpanned): Deleted.
(WebCore::Layout::RowSpan::spanCount): Deleted.
(WebCore::Layout::RowSpan::startSpan): Deleted.
(WebCore::Layout::RowSpan::endSpan): Deleted.
(WebCore::Layout::RowSpan::index): Deleted.
(WebCore::Layout::RowSpan::size): Deleted.
(WebCore::Layout::RowSpan::spacing): Deleted.
(WebCore::Layout::GridSpace::isEmpty const): Deleted.
(): Deleted.
(WebCore::Layout::max): Deleted.
(WebCore::Layout::operator-): Deleted.
(WebCore::Layout::operator+=): Deleted.
(WebCore::Layout::operator-=): Deleted.
(WebCore::Layout::operator/): Deleted.
(WebCore::Layout::distributeAvailableSpace): Deleted.
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraHorizontalSpace): Deleted.
(WebCore::Layout::TableFormattingContext::computeAndDistributeExtraVerticalSpace): Deleted.

  • layout/tableformatting/TableFormattingContext.h:
  • layout/tableformatting/TableFormattingState.h:

(WebCore::Layout::TableFormattingState::tableGrid const):

  • layout/tableformatting/TableGrid.h:

(WebCore::Layout::TableGrid::widthConstraints const):
(WebCore::Layout::TableGrid::Rows::list const):
(WebCore::Layout::TableGrid::widthConstraints): Deleted.
(WebCore::Layout::TableGrid::Rows::rowList const): Deleted.

7:40 AM Changeset in webkit [261744] by aboya@igalia.com
  • 4 edits in trunk

[GStreamer][MediaStream] Fix missing video size
https://bugs.webkit.org/show_bug.cgi?id=211938

Reviewed by Philippe Normand.

Source/WebCore:

r261683 redefined m_currentVideoStreamId. Under the new design, tracks
have several states:

  • "wanted": a track has been selected from JavaScript, or chosen by default.
  • "requested": a track that is expected to be chosen by the next STREAMS_SELECTED message.
  • "current": a track that has been selected after the STREAMS_SELECTED message has been handled.

naturalSize() used to check m_currentVideoStreamId to look for the
video size, but this is called relatively early before the track
becomes "current" under the new design.

Since the size tags can't be queried at any time, it makes sense to
use m_wantedVideoStreamId instead.

This fixes the following tests which were previously regressed:

fast/mediastream/get-user-media-constraints.html
fast/mediastream/getUserMedia-video-rescaling.html
fast/mediastream/mediastreamtrack-video-clone.html
imported/w3c/web-platform-tests/mediacapture-streams/MediaStream-MediaElement-firstframe.https.html
fast/mediastream/media-stream-renders-first-frame.html

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::naturalSize const):

LayoutTests:

Updated test expectations.

  • platform/gtk/TestExpectations:
7:27 AM Changeset in webkit [261743] by Paulo Matos
  • 3 edits in trunk/JSTests

Skip tests in ARM and MIPS post r261667

Unreviewed Gardening.
These tests started failing on both ARMv7 and MIPS post r261667.
Skipping for now until an investigation takes place.

  • stress/big-int-mod-memory-stress.js:
  • stress/incremental-marking-should-not-dead-lock-in-new-property-transition.js:
6:59 AM Changeset in webkit [261742] by Antti Koivisto
  • 8 edits
    2 adds in trunk

[Wheel event region] Invalidation when changing listeners on elements
https://bugs.webkit.org/show_bug.cgi?id=211895

Reviewed by Simon Fraser.

Source/WebCore:

Doesn't handle root (window/document) invalidation yet.

Test: fast/scrolling/mac/wheel-event-listener-region-element-invalidation.html

  • dom/EventTarget.cpp:

(WebCore::EventTarget::addEventListener):
(WebCore::EventTarget::removeEventListener):
(WebCore::EventTarget::removeAllEventListeners):

Invalidate element style on wheel event changes.

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::styleWillChange):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::invalidateEventRegion):

Build on non-iOS platforms.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::maintainsEventRegion const):

Factor into function so it can be shared with RenderLayer::invalidateEventRegion.

(WebCore::RenderLayerBacking::updateEventRegion):

  • rendering/RenderLayerBacking.h:

LayoutTests:

  • fast/scrolling/mac/wheel-event-listener-region-element-invalidation-expected.txt: Added.
  • fast/scrolling/mac/wheel-event-listener-region-element-invalidation.html: Added.
6:19 AM Changeset in webkit [261741] by graouts@webkit.org
  • 4 edits
    2 adds in trunk

Cursor should not update on a 20ms timer
https://bugs.webkit.org/show_bug.cgi?id=211884
<rdar://problem/63220368>

Reviewed by Simon Fraser.

Source/WebCore:

Test: fast/events/mouse-cursor-udpate-during-raf.html

Update cursors after rAF callbacks have been serviced and layout has been updated.

  • page/Page.cpp:

(WebCore::Page::updateRendering):
(WebCore::Page::doAfterUpdateRendering):

LayoutTests:

Add a new test that checks that changing cursor during a rAF callback is applied on the immediate next run loop.

  • fast/events/mouse-cursor-no-mousemove.html: Since cursor update happens in Page::updateRendering() after

rAF callbacks have been serviced, wait until the next run loop after an animation frame to check the new cursor.

  • fast/events/mouse-cursor-udpate-during-raf-expected.txt: Added.
  • fast/events/mouse-cursor-udpate-during-raf.html: Added.
5:40 AM Changeset in webkit [261740] by Andres Gonzalez
  • 2 edits in trunk/Source/WebCore

Update the isolated tree only if isolated tree mode is enabled.
https://bugs.webkit.org/show_bug.cgi?id=211936

Reviewed by Chris Fleizach.

Check for isIsolatedTreeEnabled before updating the isolated tree.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::updateIsolatedTree):

5:32 AM Changeset in webkit [261739] by Diego Pino Garcia
  • 2 edits in trunk/Tools

[buildbot] Increase blocksize of file transfer in UploadTestResults step
https://bugs.webkit.org/show_bug.cgi?id=211847

Reviewed by Aakash Jain.

All other steps involving file transfer uploads use 256kb as block
size. Make this step in line with others.

  • BuildSlaveSupport/build.webkit.org-config/steps.py:

(UploadTestResults.init):

3:13 AM Changeset in webkit [261738] by Diego Pino Garcia
  • 2 edits in trunk/LayoutTests

[GTK] Gardening, update test expectations after 261730
https://bugs.webkit.org/show_bug.cgi?id=211949

Unreviewed gardening.

Updates of several flaky failures.

  • platform/gtk/TestExpectations:
1:58 AM Changeset in webkit [261737] by Paulo Matos
  • 2 edits in trunk/Source/JavaScriptCore

Fix ARM NEON only assert
https://bugs.webkit.org/show_bug.cgi?id=211889

Reviewed by Mark Lam.

Fix assert that breaks if ARM does not contain NEON extensions -
the register d16 is only defined if NEON exists.

  • assembler/ARMv7Assembler.h:

(JSC::RegisterNames::asSingle):
(JSC::RegisterNames::asSingleUpper):

1:54 AM Changeset in webkit [261736] by Diego Pino Garcia
  • 2 edits in trunk/LayoutTests

[GLIB] Gardening, update test expectations
https://bugs.webkit.org/show_bug.cgi?id=211944

Unreviewed gardening.

webgl/1.0.3/conformance/more/functions/copyTexImage2DBadArgs.html is
crashing.

  • platform/glib/TestExpectations:
1:27 AM Changeset in webkit [261735] by Adrian Perez de Castro
  • 9 edits in trunk

[GTK3] Bring back usage of GtkMenu for context menus
https://bugs.webkit.org/show_bug.cgi?id=211557

Reviewed by Carlos Garcia Campos.

Source/WebCore:

No new tests needed.

  • platform/gtk/GtkVersioning.h: Remove GtkPopover functions used only for context menus.

Source/WebKit:

  • UIProcess/API/glib/WebKitWebView.cpp:

(contextMenuDismissed): Removed.
(webkitWebViewPopulateContextMenu): Use WebContextMenuProxyGtk::widgetDismissedSignal
and move the code from contextMenuDismissed() into an inline lambda.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(activeContextMenuClosed): Removed.
(webkitWebViewBaseSetActiveContextMenuProxy): Use WebContextMenuProxyGtk::widgetDismissedSignal
and move the code from activeContextMenuClosed() into an inline lambda.

  • UIProcess/gtk/WebContextMenuProxyGtk.cpp: Add helper functions to manipulate the actual

widget used for context menus depending on whether GTK3 or GTK4 is being used. The GTK3
versions bring back bits of code removed in r260889.
(WebKit::createMenuWidget): Added.
(WebKit::popupMenuWidget): Added.
(WebKit::popdownMenuWidget): Added.
(WebKit::menuWidgetHasItems): Added.
(WebKit::bindModelToMenuWidget): Added.
(WebKit::WebContextMenuProxyGtk::populate): Use context menu widget helper functions.
(WebKit::WebContextMenuProxyGtk::showContextMenuWithItems): Ditto.
(WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk): Ditto. Also handle the
signal triggered when the context menu is dismissed and arrange to call
webkitWebViewContextMenuDismissed() and webkitWebViewBaseContextMenuDismissed().
(WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk): Use helper functions.

  • UIProcess/gtk/WebContextMenuProxyGtk.h: Add WebContextMenuProxyGtk::widgetDismissedSignal

constant.

Tools:

  • TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp: Add preprocessor conditionals

for GTK4 and bring back some bits previously removed in r260889 for GTK3.

1:20 AM Changeset in webkit [261734] by Diego Pino Garcia
  • 2 edits in trunk/LayoutTests

[GTK] Gardening, update test expectations after r261678
https://bugs.webkit.org/show_bug.cgi?id=211941

Unreviewed gardening.

Two multiple-codeunit-vertical-upright tests are failing after r261678.

  • platform/gtk/TestExpectations:
12:44 AM Changeset in webkit [261733] by Diego Pino Garcia
  • 2 edits in trunk/LayoutTests

[GTK] Gardening, update expectations after r261683
https://bugs.webkit.org/show_bug.cgi?id=211939

Unreviewed gardening.

Several gstreamer tests are failing after r261683.

  • platform/gtk/TestExpectations:
12:00 AM Changeset in webkit [261732] by Said Abou-Hallawa
  • 2 edits in trunk/Source/WebCore

Unreviewed. Fix build warning after r261113

Remove unused variable.

  • dom/ScriptedAnimationController.cpp:

(WebCore::ScriptedAnimationController::preferredScriptedAnimationInterval const):

May 14, 2020:

11:55 PM Changeset in webkit [261731] by sbarati@apple.com
  • 8 edits
    1 add in trunk

GetByVal and PutByVal runtime operations shouldn't fall off a performance cliff when the property is an integer boxed as a double
https://bugs.webkit.org/show_bug.cgi?id=211935

Reviewed by Yusuke Suzuki and Mark Lam.

JSTests:

  • microbenchmarks/get-and-put-by-val-double-index-dont-fall-off-a-cliff.js: Added.

(test):

Source/JavaScriptCore:

There were parts in the runtime for get_by_val that weren't properly handling
ints boxed as doubles along the fast path. This could lead to terrible
performance as we could go from double -> string -> int while converting the
subscript into a property to access.

This patch fixes that, and removes the duplicate code we had throughout the
codebase that does this conversion. I'm adding a new functions tryGetAsUint32Index
and tryGetAsInt32 which will handle the double to int conversion.

This is a 10x speedup on the microbenchmark get-and-put-by-val-double-index-dont-fall-off-a-cliff.js

  • dfg/DFGOperations.cpp:

(JSC::DFG::putByValInternal):

  • jit/JITOperations.cpp:

(JSC::getByVal):

  • jsc.cpp:

(functionAsDoubleNumber):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::getByVal):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • runtime/JSCJSValue.h:
  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::tryGetAsUint32Index):
(JSC::JSValue::tryGetAsInt32):

8:47 PM Changeset in webkit [261730] by Simon Fraser
  • 3 edits in trunk/LayoutTests

[Mojave Debug WK2] compositing/transforms/perspective-with-scrolling.html is frequently failing
https://bugs.webkit.org/show_bug.cgi?id=211916

Unreviewed test fixing.

Disable real overlay scrollbars so they don't show up in the test to try to fix flakyness.

  • compositing/transforms/perspective-with-scrolling-expected.html:
  • compositing/transforms/perspective-with-scrolling.html:
7:28 PM Changeset in webkit [261729] by Andres Gonzalez
  • 12 edits in trunk/Source/WebCore

Expose isColumnHeaderCell and isRowHeaderCell through AXCoreObject.
https://bugs.webkit.org/show_bug.cgi?id=211919

Reviewed by Chris Fleizach.

Multiple tests including accessibility/crash-table-recursive-layout.html.

  • Expose isColumn/RowHeaderCell through AXCoreObject in order to make the

return value of AccessibilityTable::cellForColumnAndRow an AXCoreObject.

  • Implemented these methods for AXIsolatedObject.
  • isolatedCopy the accessibilityDescription property.
  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityObjectInterface.h:
  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::cellForColumnAndRow): Removed incorrect
assert since children are AXCoreObjects and not necessarily AccessibilityTableCells.

  • accessibility/AccessibilityTable.h:
  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::isTableCellInSameRowGroup):
(WebCore::AccessibilityTableCell::isTableCellInSameColGroup):
(WebCore::AccessibilityTableCell::columnHeaders):
(WebCore::AccessibilityTableCell::rowHeaders):

  • accessibility/AccessibilityTableCell.h:
  • accessibility/AccessibilityTableColumn.cpp:

(WebCore::AccessibilityTableColumn::addChildren):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityElementForRow:andColumn:]):

  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::initializeAttributeData):

  • accessibility/isolatedtree/AXIsolatedObject.h:
7:00 PM Changeset in webkit [261728] by Devin Rousso
  • 8 edits in trunk

[ESNext] enable logical assignment operators by default
https://bugs.webkit.org/show_bug.cgi?id=211921

Reviewed by Yusuke Suzuki.

JSTests:

  • test262/config.yaml:
  • stress/logical-assignment-operator-and.js:
  • stress/logical-assignment-operator-coalesce.js:
  • stress/logical-assignment-operator-or.js:

Source/JavaScriptCore:

  • runtime/OptionsList.h:
  • parser/Lexer.cpp:

(JSC::Lexer<T>::lexWithoutClearingLineTerminator):
Remove useLogicalAssignmentOperators option.

6:21 PM Changeset in webkit [261727] by Kate Cheney
  • 8 edits in trunk

Attribute non-network loads and loads with html strings as automatically app-bound
https://bugs.webkit.org/show_bug.cgi?id=211913
<rdar://problem/63157801

Reviewed by Brent Fulgham.

Source/WebKit:

Move logic from WebsiteDataStoreCocoa to WebPageProxy to check for
special app-bound protocols and set m_limitsNavigationToAppBoundDomains
to force these WebViews into app-bound mode.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _isForcedIntoAppBoundMode:]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:

Testing SPI to see whether m_limitsNavigationsToAppBoundDomains was
set.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::loadData):
Check for html string loads and force WebView into app-bound mode if needed.
No need to worry about setting this variable even if the app hasn't
opted in because setIsNavigatingToAppBoundDomainAndCheckIfPermitted
does an early return before checking this variable if
WKAppBoundDomains does not exist.

(WebKit::shouldTreatURLProtocolAsAppBound):
Adds javascript protocols to this check.

(WebKit::WebPageProxy::setIsNavigatingToAppBoundDomainAndCheckIfPermitted):
Check for special protocols here and force WebView into app-bound mode.

(WebKit::WebPageProxy::isForcedIntoAppBoundModeTesting):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:

(WebKit::WebsiteDataStore::beginAppBoundDomainCheck):
(WebKit::shouldTreatURLProtocolAsAppBound): Deleted.

Tools:

Adds new tests to check that WebView loads with HTML strings have
proper behavior.

Some tests need to test behavior on app-bound domains on webviews which do not specify
limitsNavigationsToAppBoundDomains. Since local files now do this
automatically, this patch updates those to use actual app-bound
domains from the WKAppBoundDomains list instead to maintain behavior.

Remove limitsNavigationsToAppBoundDomains for local files to make sure
they are forced into this mode automatically.

  • TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:

(-[InAppBrowserSchemeHandler webView:startURLSchemeTask:]):
(TEST):

5:33 PM Changeset in webkit [261726] by timothy@apple.com
  • 6 edits in trunk/Source

Add baseURL version of _WKUserStyleSheet forWKWebView.
https://bugs.webkit.org/show_bug.cgi?id=211926
rdar://problem/62074675

Reviewed by Devin Rousso.

Source/WebCore:

Consolidate the paths taken for adding a UserStyleSheet. The m_injectedStyleSheetToSource
was missing for page specific style sheets since it was another loop.

  • dom/ExtensionStyleSheets.cpp:

(WebCore::ExtensionStyleSheets::updateInjectedStyleSheetCache const):
(WebCore::ExtensionStyleSheets::injectPageSpecificUserStyleSheet):
(WebCore::ExtensionStyleSheets::removePageSpecificUserStyleSheet):
(WebCore::ExtensionStyleSheets::detachFromDocument):

  • dom/ExtensionStyleSheets.h:

Source/WebKit:

  • UIProcess/API/Cocoa/_WKUserStyleSheet.h:
  • UIProcess/API/Cocoa/_WKUserStyleSheet.mm:

(-[_WKUserStyleSheet initWithSource:forWKWebView:forMainFrameOnly:baseURL:level:userContentWorld:]): Added.
(-[_WKUserStyleSheet initWithSource:forWKWebView:forMainFrameOnly:level:userContentWorld:]): Clean up WebCore::UserStyleSheet initializer.
(-[_WKUserStyleSheet initWithSource:forMainFrameOnly:]): Ditto.
(-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:userContentWorld:]): Ditto.
(-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:baseURL:userContentWorld:]): Ditto.
(-[_WKUserStyleSheet initWithSource:forMainFrameOnly:legacyWhitelist:legacyBlacklist:baseURL:level:userContentWorld:]): Ditto.

5:20 PM Changeset in webkit [261725] by keith_miller@apple.com
  • 4 edits
    1 add in trunk

Undecided Arrays shouldn't need to be OriginalArray to covert to GetArrayLength
https://bugs.webkit.org/show_bug.cgi?id=211914

Reviewed by Saam Barati.

JSTests:

  • stress/undecided-arrays-should-not-need-original-array-for-length.js: Added.

(findFoo):
(const.nonUndecidedFrequency.1000.SubArray):
(i.i.some):

Source/JavaScriptCore:

Also, fix a bug that arrayModesThatPassFiltering() can't handle
Undecided arrays. Because we can now emit a CheckArray on
Undecided AI will try to figure out what types flow out of the
check. Since Undecided was unhandled by filtering, AI will assume
bottom is the only possible value and the DFG/FTL will insert a
breakpoint, causing a crash.

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::refine const):

  • dfg/DFGArrayMode.h:

(JSC::DFG::ArrayMode::arrayModesThatPassFiltering const):

5:02 PM Changeset in webkit [261724] by wilander@apple.com
  • 2 edits in trunk/Source/WebKit

Add quirk for cookie blocking latch mode aolmail.com redirecting to aol.com under aol.com
https://bugs.webkit.org/show_bug.cgi?id=211925
<rdar://problem/61901041>

Reviewed by Brent Fulgham.

No new tests. Just a new quirk for a pair of domains added by request.

  • NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:

(WebKit::NetworkDataTaskCocoa::needsFirstPartyCookieBlockingLatchModeQuirk const):

4:49 PM Changeset in webkit [261723] by jiewen_tan@apple.com
  • 4 edits in trunk

[WebAuthn] Relaxing signature length requirements for U2fRegister
https://bugs.webkit.org/show_bug.cgi?id=209645
<rdar://problem/63204591>

Reviewed by Brent Fulgham.

Source/WebCore:

It turns out the length range specified from the spec, i.e., [71, 73] is wrong.
https://fidoalliance.org/specs/fido-u2f-v1.2-ps-20170411/fido-u2f-raw-message-formats-v1.2-ps-20170411.html#registration-response-message-success

It should actually be [70, 72]. However, as a middleware to relay the messages, user agents
are not necessary to check the length. Therefore, the check is relaxed to make the code more robust.

Covered by existing tests.

  • Modules/webauthn/fido/U2fResponseConverter.cpp:

(fido::WebCore::createFidoAttestationStatementFromU2fRegisterResponse):

Tools:

  • TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:

(TestWebKitAPI::TEST):

4:38 PM Changeset in webkit [261722] by Jonathan Bedard
  • 3 edits in trunk/Tools

run-webkit-tests shouldn't need Xcode to run Mac tests
https://bugs.webkit.org/show_bug.cgi?id=211903
<rdar://problem/63205839>

Reviewed by Stephanie Lewis.

  • Scripts/webkitpy/common/system/platforminfo.py:

(PlatformInfo):
(PlatformInfo.xcode_sdk_version): Memoize SDK version retrieval.
(PlatformInfo.xcode_version): Only run xcodebuild if macosx SDK is present.
(PlatformInfo.available_sdks): Ditto.

  • Scripts/webkitpy/common/system/platforminfo_unittest.py:

(TestPlatformInfo.test_available_sdks):

4:29 PM Changeset in webkit [261721] by eric.carlson@apple.com
  • 2 edits in trunk/LayoutTests

media/video-poster-set-after-playback.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=211856
<rdar://problem/63194296>

Unreviewed test fix.

  • media/video-poster-set-after-playback.html: testExpectedEventually returns a Promise,

so wait for it to be resolved.

4:27 PM Changeset in webkit [261720] by Alan Coon
  • 2 edits in branches/safari-610.1.13-branch/Source/WebKitLegacy

Cherry-pick r261627. rdar://problem/63248356

[Win] Fix AppleWin link error
https://bugs.webkit.org/show_bug.cgi?id=211843

Reviewed by Brent Fulgham.

Make sure uuid.lib comes after WebKitGUID.lib in the list of libraries to link with. Also, add a linker flag
to allow multiple definitions of the same symbol when linking WebKit.dll.

  • PlatformWin.cmake:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261627 268f45cc-cd09-0410-ab3c-d52691b4dbfc

4:18 PM Changeset in webkit [261719] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Regression(r261163) Causes crashes on builds without libwebrtc.dylib
https://bugs.webkit.org/show_bug.cgi?id=211924
<rdar://problem/63206792>

Reviewed by Jer Noble.

  • WebProcess/Network/NetworkProcessConnection.cpp:

(WebKit::NetworkProcessConnection::NetworkProcessConnection):

4:11 PM Changeset in webkit [261718] by timothy@apple.com
  • 10 edits in trunk/Source

Add sourceURL to _evaluateJavaScript: so the scripts appear in Web Inspector.
https://bugs.webkit.org/show_bug.cgi?id=211904
rdar://problem/62074376

Reviewed by Devin Rousso.

Source/WebCore:

Added sourceURL to RunJavaScriptParameters. Use it instead of the frame's document URL.

  • bindings/js/RunJavaScriptParameters.h:

(WebCore::RunJavaScriptParameters::RunJavaScriptParameters):
(WebCore::RunJavaScriptParameters::encode const):
(WebCore::RunJavaScriptParameters::decode):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::executeScriptInWorldIgnoringException):
(WebCore::ScriptController::executeScriptInWorld):
(WebCore::ScriptController::callInWorld):
(WebCore::ScriptController::executeUserAgentScriptInWorld):

Source/WebKit:

Added sourceURL version of _evaluateJavaScript: that passes the sourceURL to RunJavaScriptParameters.
If the sourceURL is invalid, generate a unique user script URL so the source code errors are not showing
up with the frame's document URL and bogus locations.

  • UIProcess/API/C/WKPage.cpp:

(WKPageRunJavaScriptInMainFrame): pass API::UserScript::generateUniqueURL() for the sourceURL.

  • UIProcess/API/Cocoa/WKUserScript.mm:

(-[WKUserScript initWithSource:injectionTime:forMainFrameOnly:]): Clean up WebCore::UserScript initializer.
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:userContentWorld:]): Ditto.
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:associatedURL:userContentWorld:]): Ditto.
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:contentWorld:]): Ditto.
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:associatedURL:contentWorld:]): Ditto.
(-[WKUserScript _initWithSource:injectionTime:forMainFrameOnly:legacyWhitelist:legacyBlacklist:associatedURL:contentWorld:deferRunningUntilNotification:]): Ditto.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _evaluateJavaScript:asAsyncFunction:withArguments:forceUserGesture:inFrame:inWorld:completionHandler:]): Renamed to add sourceURL.
(-[WKWebView _evaluateJavaScript:asAsyncFunction:withSourceURL:withArguments:forceUserGesture:inFrame:inWorld:completionHandler:]): Added sourceURL.
(-[WKWebView _evaluateJavaScript:withSourceURL:inFrame:inContentWorld:completionHandler:]): Added. Pass sourceURL through.
(-[WKWebView evaluateJavaScript:completionHandler:]): Call new method with sourceURL as nil.
(-[WKWebView evaluateJavaScript:inContentWorld:completionHandler:]): Ditto.
(-[WKWebView callAsyncJavaScript:arguments:inContentWorld:completionHandler:]): Ditto.
(-[WKWebView _callAsyncJavaScript:arguments:inFrame:inContentWorld:completionHandler:]): Ditto.
(-[WKWebView _evaluateJavaScript:inFrame:inContentWorld:completionHandler:]): Ditto.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
3:45 PM Changeset in webkit [261717] by Chris Dumez
  • 4 edits in trunk/Source/WebKit

WebsiteDataStore functions should only send IPC to WebProcesses that are associated with its session
https://bugs.webkit.org/show_bug.cgi?id=211917

Reviewed by Alex Christensen.

WebsiteDataStore functions should only send IPC to WebProcesses that are associated with its session.
setResourceLoadStatisticsEnabled() / clearResourceLoadStatisticsInWebProcesses() were talking to all
WebProcesses, even those associated with other sessions, which was wrong.

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::clearResourceLoadStatistics): Deleted.

  • UIProcess/WebProcessPool.h:
  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::setResourceLoadStatisticsEnabled):
(WebKit::WebsiteDataStore::clearResourceLoadStatisticsInWebProcesses):

3:42 PM Changeset in webkit [261716] by Nikita Vasilyev
  • 2 edits in trunk/LayoutTests

REGRESSION (r261703): [ Mac ] inspector/css/getMatchedStylesForNode.html is failing
https://bugs.webkit.org/show_bug.cgi?id=211918
<rdar://problem/63241578>

Reviewed by Timothy Hatcher.

Rebaseline tests after CSS.StyleSheetOrigin.Regular was renamed to CSS.StyleSheetOrigin.Author.

  • inspector/css/getMatchedStylesForNode-expected.txt:
3:41 PM Changeset in webkit [261715] by Truitt Savell
  • 2 edits in trunk/LayoutTests

(r260169) [ iOS ] http/tests/resourceLoadStatistics/standalone-web-application-exempt-from-website-data-deletion-database.html is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=211928

Unreviewed test gardening.

  • platform/ios-wk2/TestExpectations:
3:29 PM Changeset in webkit [261714] by dbates@webkit.org
  • 7 edits in trunk/Source

[iOS] Remove dead dictation code
https://bugs.webkit.org/show_bug.cgi?id=211871

Reviewed by Wenson Hsieh.

Source/WebKit:

UIKit has long removed all callers that would call -nextUnperturbedDictationResultBoundaryFromPosition
and -previousUnperturbedDictationResultBoundaryFromPosition. So, remove the implementations.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView previousUnperturbedDictationResultBoundaryFromPosition:]): Deleted.
(-[WKContentView nextUnperturbedDictationResultBoundaryFromPosition:]): Deleted.

Source/WebKitLegacy/ios:

  • DefaultDelegates/WebDefaultUIKitDelegate.m:

(-[WebDefaultUIKitDelegate isUnperturbedDictationResultMarker:]): Deleted.

  • WebCoreSupport/WebFrameIOS.h:
  • WebCoreSupport/WebFrameIOS.mm:

(-[WebFrame previousUnperturbedDictationResultBoundaryFromPosition:]): Deleted.
(-[WebFrame nextUnperturbedDictationResultBoundaryFromPosition:]): Deleted.

  • WebView/WebUIKitDelegate.h:
3:28 PM Changeset in webkit [261713] by dbates@webkit.org
  • 9 edits in trunk

Include LocalOverrides.xcconfig in all Tools projects
https://bugs.webkit.org/show_bug.cgi?id=211789

Reviewed by Dan Bernstein.

Matches what is done for all Source projects so as to support local overriding of configs.
Source/ThirdParty:

Only allow overrides when building for Debug and Release. Again, this matches what is
being done for Source projects.

  • gtest/xcode/Config/DebugProject.xcconfig:
  • gtest/xcode/Config/ReleaseProject.xcconfig:

Tools:

  • DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
  • MiniBrowser/Configurations/DebugRelease.xcconfig:
  • MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
  • TestWebKitAPI/Configurations/DebugRelease.xcconfig:
  • WebKitTestRunner/Configurations/DebugRelease.xcconfig:
3:01 PM Changeset in webkit [261712] by keith_miller@apple.com
  • 11 edits
    1 add in trunk

GetArrayLength should be "blessed" during Fixup phase in the DFG
https://bugs.webkit.org/show_bug.cgi?id=211540

Reviewed by Saam Barati.

JSTests:

  • stress/get-array-length-node-should-be-blessed-in-fixup.js: Added.

(foo):

Source/JavaScriptCore:

If we got an ArrayMode during bytecode parsing for-of that expects
to be configured during Fixup, then right now we will crash on
GetArrayLength. This fixes GetArrayLength to properly call
blessArrayOperation and fixes clobberize to know that
GetArrayLength could have a ForceExit ArrayMode briefly before
being cleaned up.

When blessing GetArrayLength we can now produce CheckArrays that
have an AnyTypedArray ArrayMode::Type. So this patch expands
CheckArray to properly handle that. To help with this we expand
branchIfType to have a starting JSType and an optional ending
JSType. Additionally, to prevent extra checks AI has been taught
to fold more ArrayModes so we should almost always avoid new
runtime checks.

Lastly, make sure that Undecided Arrays don't fall back to generic
because GetArrayLength can't be converted to...
GetArrayLenth. Also, GetArrayLength would previously pass it's own
speculation for the speculation of the index, which logically
doesn't make sense. So this patch adds a new constant, which is
SpecInt32Only, that can be passed if a DFG node doesn't have an
index.

  • assembler/testmasm.cpp:

(JSC::testBranchIfType):
(JSC::testBranchIfNotType):
(JSC::run):

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::canBecomeGetArrayLength):

  • dfg/DFGArrayMode.h:
  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::blessArrayOperation):
(JSC::DFG::FixupPhase::attemptToMakeGetArrayLength):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArray):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::isArrayTypeForCheckArray):

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::branchIfType):
(JSC::AssemblyHelpers::branchIfNotType):

  • runtime/JSType.h:
2:50 PM Changeset in webkit [261711] by Alan Coon
  • 1 copy in tags/Safari-609.3.1

Tag Safari-609.3.1.

2:43 PM Changeset in webkit [261710] by Jason_Lawrence
  • 2 edits in trunk/LayoutTests

[ Mac wk1 Debug ] imported/w3c/web-platform-tests/fetch/api/basic/stream-safe-creation.any.html is flaky crashing with alerts - WTFCrashWithInfo - SC::JSObject::get(JSC::JSGlobalObject*, JSC::PropertyName)
https://bugs.webkit.org/show_bug.cgi?id=211923

Unreviewed test gardening.

  • platform/mac-wk1/TestExpectations:
1:38 PM Changeset in webkit [261709] by eric.carlson@apple.com
  • 13 edits
    2 adds in trunk

[Cocoa] Don't clear NowPlaying state unless it was set
https://bugs.webkit.org/show_bug.cgi?id=211899
<rdar://problem/62249870>

Reviewed by Jer Noble.

Source/WebCore:

Test: media/now-playing-status-without-media.html

  • platform/audio/PlatformMediaSessionManager.h:

(WebCore::PlatformMediaSessionManager::haveEverRegisteredAsNowPlayingApplication const): Method
added for testing.

  • platform/audio/cocoa/MediaSessionManagerCocoa.h:
  • platform/audio/cocoa/MediaSessionManagerCocoa.mm:

(WebCore::MediaSessionManagerCocoa::updateNowPlayingInfo): Don't clear NowPlaying state unless
it was setup in the first place.

  • testing/Internals.cpp:

(WebCore::Internals::nowPlayingState const): Add new property.

  • testing/Internals.h:
  • testing/Internals.idl:

LayoutTests:

  • media/now-playing-status-without-media-expected.txt: Added.
  • media/now-playing-status-without-media.html: Added.
  • gpu-process/TestExpectations: Skip test because media session isn't fully functional in GPUP.
  • platform/mac-wk1/TestExpectations: Skip test because media session manager is a singleton.
  • platform/gtk/TestExpectations: Skip Cocoa-only test.
  • platform/win/TestExpectations: Ditto.
  • platform/wpe/TestExpectations: Ditto.
1:31 PM Changeset in webkit [261708] by mmaxfield@apple.com
  • 2 edits in trunk/LayoutTests

fast/text/multiple-codeunit-vertical-upright.html is failing
https://bugs.webkit.org/show_bug.cgi?id=211860
<rdar://problem/31893714>

Unreviewed test gardening.

  • platform/win/TestExpectations:
1:02 PM Changeset in webkit [261707] by Alan Bujtas
  • 1 edit
    1 add in trunk/LayoutTests

[Win] Rebaseline after r261676.

  • platform/win/fast/layoutformattingcontext/table-fixed-width-with-max-distribution-expected.txt: Added.
12:46 PM Changeset in webkit [261706] by Andres Gonzalez
  • 2 edits in trunk/Tools

Fix for crashes in LayoutTests related to TextMarkers in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=211912

Reviewed by Chris Fleizach.

Check for null pointer parameters before dereferencing.

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:

(WTR::misspellingSearchParameterizedAttributeForCriteria):
(WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
(WTR::AccessibilityUIElement::textMarkerRangeLength):
(WTR::AccessibilityUIElement::previousTextMarker):
(WTR::AccessibilityUIElement::nextTextMarker):
(WTR::AccessibilityUIElement::stringForTextMarkerRange):
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
(WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute):
(WTR::AccessibilityUIElement::indexForTextMarker):
(WTR::AccessibilityUIElement::isTextMarkerValid):
(WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker):
(WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker):
(WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker):
(WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker):
(WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker):
(WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker):
(WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker):
(WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker):
(WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker):
(WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker):

12:44 PM Changeset in webkit [261705] by Andres Gonzalez
  • 8 edits in trunk/Source/WebCore

AXCoreObject font comparison methods should take another AXCoreObject instead of a RenderObject.
https://bugs.webkit.org/show_bug.cgi?id=211909

Reviewed by Chris Fleizach.

Covered by existing tests.

  • In order for font comparison methods to be implementted for both

AXObjects and AXIsolatedObjects, they should take another AXCoreObject
to compare against, instead of a RenderObject.

  • The AXIsolatedObject implementation of these methods is forwarded to

the associated AXObject and dispatched to the main thread.

  • Implemented AXIsolatedObject::accessibilityDescription, hasUnderline and isUnvisited.
  • accessibility/AccessibilityObject.cpp:

(WebCore::Accessibility::isAccessibilityObjectSearchMatchAtIndex):

  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityObjectInterface.h:

(WebCore::AXCoreObject::isNativeListBox const):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::hasSameFont const):
(WebCore::AccessibilityRenderObject::hasSameFontColor const):
(WebCore::AccessibilityRenderObject::hasSameStyle const):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::initializeAttributeData):
(WebCore::AXIsolatedObject::hasSameFont const):
(WebCore::AXIsolatedObject::hasSameFontColor const):
(WebCore::AXIsolatedObject::hasSameStyle const):
(WebCore::AXIsolatedObject::isNativeListBox const): Deleted, implemented in base class.
(WebCore::AXIsolatedObject::isUnvisited const): Deleted, inlined in header.
(WebCore::AXIsolatedObject::hasUnderline const): Deleted, inlined in header.
(WebCore::AXIsolatedObject::accessibilityDescription const): Deleted, inlined in header.

  • accessibility/isolatedtree/AXIsolatedObject.h:
12:35 PM Changeset in webkit [261704] by Ryan Haddad
  • 2 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

Unreviewed test gardening.

  • platform/mac/TestExpectations: Mark test as flaky.
12:28 PM Changeset in webkit [261703] by Nikita Vasilyev
  • 5 edits in trunk

Web Inspector: front-end shouldn't change the order of User Style Sheet rules
https://bugs.webkit.org/show_bug.cgi?id=210893
<rdar://problem/61937118>

Reviewed by Devin Rousso.

Source/WebCore:

Previously, some style sheets were falsly detected as Inspector::Protocol::CSS::StyleSheetOrigin::User
causing incorrect order of style rules in Web Inspector.

Test: inspector/css/getMatchedStylesForNode.html

  • inspector/agents/InspectorCSSAgent.cpp:

(WebCore::InspectorCSSAgent::detectOrigin):

LayoutTests:

Test that AuthorCSS and UserCSS are correctly arranged.

  • inspector/css/getMatchedStylesForNode-expected.txt:
  • inspector/css/getMatchedStylesForNode.html:
12:04 PM Changeset in webkit [261702] by Ryan Haddad
  • 4 edits in trunk/LayoutTests

Unreviewed test gardening, remove expectations for tests that are no longer failing.

  • platform/ios-wk2/TestExpectations:
  • platform/mac-wk1/TestExpectations:
  • platform/mac-wk2/TestExpectations:
11:47 AM Changeset in webkit [261701] by Lauro Moura
  • 1 edit
    27 copies
    317 moves
    69 adds
    279 deletes in trunk/LayoutTests

[GTK][WPE] Move remaining shared tests expectation files to glib
https://bugs.webkit.org/show_bug.cgi?id=211902

Unreviewed test gardening.

  • platform/glib/accessibility/add-children-pseudo-element-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/add-children-pseudo-element-expected.txt.
  • platform/glib/accessibility/aria-fallback-roles-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-fallback-roles-expected.txt.
  • platform/glib/accessibility/aria-hidden-negates-no-visibility-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-hidden-negates-no-visibility-expected.txt.
  • platform/glib/accessibility/aria-label-on-label-element-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-label-on-label-element-expected.txt.
  • platform/glib/accessibility/aria-labelledby-overrides-aria-label-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-labelledby-overrides-aria-label-expected.txt.
  • platform/glib/accessibility/aria-labelledby-overrides-label-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-labelledby-overrides-label-expected.txt.
  • platform/glib/accessibility/aria-option-role-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-option-role-expected.txt.
  • platform/glib/accessibility/aria-roledescription-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-roledescription-expected.txt.
  • platform/glib/accessibility/aria-switch-sends-notification-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-switch-sends-notification-expected.txt.
  • platform/glib/accessibility/aria-tab-roles-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-tab-roles-expected.txt.
  • platform/glib/accessibility/aria-table-attributes-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-table-attributes-expected.txt.
  • platform/glib/accessibility/aria-table-content-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-table-content-expected.txt.
  • platform/glib/accessibility/aria-toggle-button-with-title-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/aria-toggle-button-with-title-expected.txt.
  • platform/glib/accessibility/auto-fill-crash-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/auto-fill-crash-expected.txt.
  • platform/glib/accessibility/button-with-aria-haspopup-role-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/button-with-aria-haspopup-role-expected.txt.
  • platform/glib/accessibility/deleting-iframe-destroys-axcache-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/deleting-iframe-destroys-axcache-expected.txt.
  • platform/glib/accessibility/dimensions-include-descendants-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/dimensions-include-descendants-expected.txt.
  • platform/glib/accessibility/double-nested-inline-element-missing-from-tree-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/double-nested-inline-element-missing-from-tree-expected.txt.
  • platform/glib/accessibility/empty-image-with-title-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/empty-image-with-title-expected.txt.
  • platform/glib/accessibility/file-upload-button-stringvalue-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/file-upload-button-stringvalue-expected.txt.
  • platform/glib/accessibility/help-text-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/help-text-expected.txt.
  • platform/glib/accessibility/image-map1-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/image-map1-expected.txt.
  • platform/glib/accessibility/inline-continuations-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/inline-continuations-expected.txt.
  • platform/glib/accessibility/label-with-pseudo-elements-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/label-with-pseudo-elements-expected.txt.
  • platform/glib/accessibility/list-detection-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/list-detection-expected.txt.
  • platform/glib/accessibility/media-emits-object-replacement-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/media-emits-object-replacement-expected.txt.
  • platform/glib/accessibility/menu-list-crash2-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/menu-list-crash2-expected.txt.
  • platform/glib/accessibility/menu-list-sends-change-notification-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/menu-list-sends-change-notification-expected.txt.
  • platform/glib/accessibility/minimal-table-with-aria-is-data-table-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/minimal-table-with-aria-is-data-table-expected.txt.
  • platform/glib/accessibility/radio-button-title-label-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/radio-button-title-label-expected.txt.
  • platform/glib/accessibility/render-counter-text-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/render-counter-text-expected.txt.
  • platform/glib/accessibility/roles-computedRoleString-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/roles-computedRoleString-expected.txt.
  • platform/glib/accessibility/set-selected-text-range-contenteditable-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/set-selected-text-range-contenteditable-expected.txt.
  • platform/glib/accessibility/svg-remote-element-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/svg-remote-element-expected.txt.
  • platform/glib/accessibility/tabindex-elements-are-accessible-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/tabindex-elements-are-accessible-expected.txt.
  • platform/glib/accessibility/table-cells-roles-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/table-cells-roles-expected.txt.
  • platform/glib/accessibility/table-column-headers-with-captions-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/table-column-headers-with-captions-expected.txt.
  • platform/glib/accessibility/table-roles-hierarchy-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/table-roles-hierarchy-expected.txt.
  • platform/glib/accessibility/text-alternative-calculation-hidden-nodes-expected.txt: Renamed from LayoutTests/platform/gtk/accessibility/text-alternative-calculation-hidden-nodes-expected.txt.
  • platform/glib/animations/3d/change-transform-in-end-event-expected.txt: Renamed from LayoutTests/platform/gtk/animations/3d/change-transform-in-end-event-expected.txt.
  • platform/glib/animations/3d/state-at-end-event-transform-expected.txt: Renamed from LayoutTests/platform/gtk/animations/3d/state-at-end-event-transform-expected.txt.
  • platform/glib/animations/state-at-end-event-expected.txt: Renamed from LayoutTests/platform/gtk/animations/state-at-end-event-expected.txt.
  • platform/glib/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt: Renamed from LayoutTests/platform/gtk/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt.
  • platform/glib/crypto/subtle/aes-cbc-cfb-decrypt-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/aes-cbc-cfb-decrypt-malformed-parameters-expected.txt.
  • platform/glib/crypto/subtle/aes-cbc-cfb-encrypt-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/aes-cbc-cfb-encrypt-malformed-parameters-expected.txt.
  • platform/glib/crypto/subtle/aes-export-key-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/aes-export-key-malformed-parameters-expected.txt.
  • platform/glib/crypto/subtle/aes-generate-key-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/aes-generate-key-malformed-parameters-expected.txt.
  • platform/glib/crypto/subtle/aes-import-key-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/aes-import-key-malformed-parameters-expected.txt.
  • platform/glib/crypto/subtle/ec-generate-key-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/ec-generate-key-malformed-parameters-expected.txt.
  • platform/glib/crypto/subtle/ecdh-derive-bits-length-limits-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/ecdh-derive-bits-length-limits-expected.txt.
  • platform/glib/crypto/subtle/ecdh-import-spki-key-ecdh-identifier-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/ecdh-import-spki-key-ecdh-identifier-expected.txt.
  • platform/glib/crypto/subtle/rsa-generate-key-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/rsa-generate-key-malformed-parameters-expected.txt.
  • platform/glib/crypto/subtle/rsa-import-key-malformed-parameters-expected.txt: Renamed from LayoutTests/platform/gtk/crypto/subtle/rsa-import-key-malformed-parameters-expected.txt.
  • platform/glib/fetch/fetch-url-serialization-expected.txt: Renamed from LayoutTests/platform/gtk/fetch/fetch-url-serialization-expected.txt.
  • platform/glib/fullscreen/full-screen-placeholder-expected.txt: Renamed from LayoutTests/platform/gtk/fullscreen/full-screen-placeholder-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/broken-utf8-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/broken-utf8-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/close-before-open-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/close-before-open-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/close-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/close-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/closed-when-entering-page-cache-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/closed-when-entering-page-cache-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/compressed-control-frame-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/compressed-control-frame-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/deflate-frame-parameter-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/deflate-frame-parameter-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/error-event-ready-state-non-existent-url-with-server-responding-404-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/error-event-ready-state-non-existent-url-with-server-responding-404-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/extensions-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/extensions-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/fragmented-control-frame-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/fragmented-control-frame-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-error-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-error-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-invalid-http-version-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-invalid-http-version-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-maxlength-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-maxlength-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-mismatch-protocol-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-mismatch-protocol-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-more-accept-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-more-accept-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-more-extensions-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-more-extensions-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-more-protocol-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-more-protocol-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-no-cr-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-no-cr-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-accept-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-accept-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-extensions-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-extensions-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-protocol-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-protocol-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-status-line-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-status-line-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-null-char-in-status-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-null-char-in-status-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-comp-bit-onoff-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-comp-bit-onoff-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-invalid-parameter-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-invalid-parameter-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-parameter-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-parameter-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-set-bfinal-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-set-bfinal-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-split-frames-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-split-frames-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-unsolicited-negotiation-response-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-unsolicited-negotiation-response-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-window-bits-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-window-bits-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/interleaved-fragments-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/interleaved-fragments-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/invalid-continuation-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/invalid-continuation-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/invalid-encode-length-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/invalid-encode-length-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/invalid-masked-frames-from-server-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/invalid-masked-frames-from-server-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/long-control-frame-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/long-control-frame-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/long-invalid-header-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/long-invalid-header-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/reserved-bits-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/reserved-bits-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/reserved-opcodes-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/reserved-opcodes-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/secure-cookie-secure-connection-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/secure-cookie-secure-connection-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/send-object-tostring-check-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/send-object-tostring-check-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/simple-wss-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/simple-wss-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/stop-on-resume-in-error-handler-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/stop-on-resume-in-error-handler-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/too-long-payload-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/too-long-payload-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/websocket-allowed-setting-cookie-as-third-party-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/websocket-allowed-setting-cookie-as-third-party-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/websocket-cookie-overwrite-behavior-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/websocket-cookie-overwrite-behavior-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/websocket-event-target-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/websocket-event-target-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/workers/close-code-and-reason-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/workers/close-code-and-reason-expected.txt.
  • platform/glib/http/tests/websocket/tests/hybi/workers/close-expected.txt: Renamed from LayoutTests/platform/gtk/http/tests/websocket/tests/hybi/workers/close-expected.txt.
  • platform/glib/js/dom/constructor-length-expected.txt: Renamed from LayoutTests/platform/gtk/js/dom/constructor-length-expected.txt.
  • platform/glib/media/media-source/media-source-append-before-last-range-no-quota-exceeded-expected.txt: Renamed from LayoutTests/platform/gtk/media/media-source/media-source-append-before-last-range-no-quota-exceeded-expected.txt.
  • platform/glib/scrollbars/basic-scrollbar-expected.txt: Renamed from LayoutTests/platform/gtk/scrollbars/basic-scrollbar-expected.txt.
  • platform/glib/scrollbars/disabled-scrollbar-expected.txt: Renamed from LayoutTests/platform/gtk/scrollbars/disabled-scrollbar-expected.txt.
  • platform/glib/scrollbars/listbox-scrollbar-combinations-expected.txt: Renamed from LayoutTests/platform/gtk/scrollbars/listbox-scrollbar-combinations-expected.txt.
  • platform/glib/scrollbars/scrollbar-buttons-expected.txt: Renamed from LayoutTests/platform/gtk/scrollbars/scrollbar-buttons-expected.txt.
  • platform/glib/scrollbars/scrollbar-orientation-expected.txt: Renamed from LayoutTests/platform/gtk/scrollbars/scrollbar-orientation-expected.txt.
  • platform/glib/scrollbars/scrollbar-selectors-expected.txt: Renamed from LayoutTests/platform/gtk/scrollbars/scrollbar-selectors-expected.txt.
  • platform/glib/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt.
  • platform/glib/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt.
  • platform/glib/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt.
  • platform/glib/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt.
  • platform/glib/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt.
  • platform/glib/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt.
  • platform/glib/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt.
  • platform/glib/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt.
  • platform/glib/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt.
  • platform/glib/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt.
  • platform/glib/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt.
  • platform/glib/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt.
  • platform/glib/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Renamed from LayoutTests/platform/gtk/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt.
  • platform/glib/svg/as-background-image/background-image-preserveaspectRatio-support-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-background-image/background-image-preserveaspectRatio-support-expected.txt.
  • platform/glib/svg/as-border-image/svg-as-border-image-2-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-border-image/svg-as-border-image-2-expected.txt.
  • platform/glib/svg/as-border-image/svg-as-border-image-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-border-image/svg-as-border-image-expected.txt.
  • platform/glib/svg/as-image/animated-svg-as-image-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/animated-svg-as-image-expected.txt.
  • platform/glib/svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size-expected.txt.
  • platform/glib/svg/as-image/animated-svg-as-image-same-image-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/animated-svg-as-image-same-image-expected.txt.
  • platform/glib/svg/as-image/animated-svg-repaints-completely-in-hidpi-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/animated-svg-repaints-completely-in-hidpi-expected.txt.
  • platform/glib/svg/as-image/image-respects-deviceScaleFactor-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/image-respects-deviceScaleFactor-expected.txt.
  • platform/glib/svg/as-image/img-preserveAspectRatio-support-1-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/img-preserveAspectRatio-support-1-expected.txt.
  • platform/glib/svg/as-image/img-preserveAspectRatio-support-2-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/img-preserveAspectRatio-support-2-expected.txt.
  • platform/glib/svg/as-image/same-image-two-instances-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/same-image-two-instances-expected.txt.
  • platform/glib/svg/as-image/svg-image-change-content-size-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-image/svg-image-change-content-size-expected.txt.
  • platform/glib/svg/as-object/object-box-sizing-no-width-height-expected.txt: Renamed from LayoutTests/platform/gtk/svg/as-object/object-box-sizing-no-width-height-expected.txt.
  • platform/glib/svg/batik/filters/filterRegions-expected.txt: Renamed from LayoutTests/platform/gtk/svg/batik/filters/filterRegions-expected.txt.
  • platform/glib/svg/batik/masking/maskRegions-expected.txt: Renamed from LayoutTests/platform/gtk/svg/batik/masking/maskRegions-expected.txt.
  • platform/glib/svg/batik/paints/patternPreserveAspectRatioA-expected.txt: Renamed from LayoutTests/platform/gtk/svg/batik/paints/patternPreserveAspectRatioA-expected.txt.
  • platform/glib/svg/batik/paints/patternRegions-expected.txt: Renamed from LayoutTests/platform/gtk/svg/batik/paints/patternRegions-expected.txt.
  • platform/glib/svg/batik/paints/patternRegions-positioned-objects-expected.txt: Renamed from LayoutTests/platform/gtk/svg/batik/paints/patternRegions-positioned-objects-expected.txt.
  • platform/glib/svg/batik/text/textAnchor2-expected.txt: Renamed from LayoutTests/platform/gtk/svg/batik/text/textAnchor2-expected.txt.
  • platform/glib/svg/batik/text/textAnchor3-expected.txt: Renamed from LayoutTests/platform/gtk/svg/batik/text/textAnchor3-expected.txt.
  • platform/glib/svg/batik/text/textEffect3-expected.txt: Renamed from LayoutTests/platform/gtk/svg/batik/text/textEffect3-expected.txt.
  • platform/glib/svg/carto.net/combobox-expected.txt: Renamed from LayoutTests/platform/gtk/svg/carto.net/combobox-expected.txt.
  • platform/glib/svg/carto.net/slider-expected.txt: Renamed from LayoutTests/platform/gtk/svg/carto.net/slider-expected.txt.
  • platform/glib/svg/css/getComputedStyle-basic-expected.txt: Renamed from LayoutTests/platform/gtk/svg/css/getComputedStyle-basic-expected.txt.
  • platform/glib/svg/css/text-gradient-shadow-expected.txt: Renamed from LayoutTests/platform/gtk/svg/css/text-gradient-shadow-expected.txt.
  • platform/glib/svg/css/text-shadow-multiple-expected.txt: Renamed from LayoutTests/platform/gtk/svg/css/text-shadow-multiple-expected.txt.
  • platform/glib/svg/custom/SVGMatrix-interface-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/SVGMatrix-interface-expected.txt.
  • platform/glib/svg/custom/SVGPoint-matrixTransform-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/SVGPoint-matrixTransform-expected.txt.
  • platform/glib/svg/custom/absolute-sized-content-with-resources-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/absolute-sized-content-with-resources-expected.txt.
  • platform/glib/svg/custom/alignment-baseline-modes-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/alignment-baseline-modes-expected.txt.
  • platform/glib/svg/custom/animate-path-morphing-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/animate-path-morphing-expected.txt.
  • platform/glib/svg/custom/broken-internal-references-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/broken-internal-references-expected.txt.
  • platform/glib/svg/custom/bug78807-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/bug78807-expected.txt.
  • platform/glib/svg/custom/circle-move-invalidation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/circle-move-invalidation-expected.txt.
  • platform/glib/svg/custom/control-points-for-S-and-T-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/control-points-for-S-and-T-expected.txt.
  • platform/glib/svg/custom/coords-relative-units-transforms-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/coords-relative-units-transforms-expected.txt.
  • platform/glib/svg/custom/createImageElement2-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/createImageElement2-expected.txt.
  • platform/glib/svg/custom/dominant-baseline-hanging-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/dominant-baseline-hanging-expected.txt.
  • platform/glib/svg/custom/dominant-baseline-modes-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/dominant-baseline-modes-expected.txt.
  • platform/glib/svg/custom/embedding-external-svgs-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/embedding-external-svgs-expected.txt.
  • platform/glib/svg/custom/empty-mask-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/empty-mask-expected.txt.
  • platform/glib/svg/custom/feComponentTransfer-Discrete-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/feComponentTransfer-Discrete-expected.txt.
  • platform/glib/svg/custom/feComponentTransfer-Linear-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/feComponentTransfer-Linear-expected.txt.
  • platform/glib/svg/custom/feComponentTransfer-Table-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/feComponentTransfer-Table-expected.txt.
  • platform/glib/svg/custom/focus-ring-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/focus-ring-expected.txt.
  • platform/glib/svg/custom/font-face-cascade-order-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/font-face-cascade-order-expected.txt.
  • platform/glib/svg/custom/font-face-simple-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/font-face-simple-expected.txt.
  • platform/glib/svg/custom/foreign-object-skew-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/foreign-object-skew-expected.txt.
  • platform/glib/svg/custom/foreignObject-crash-on-hover-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/foreignObject-crash-on-hover-expected.txt.
  • platform/glib/svg/custom/getTransformToElement-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/getTransformToElement-expected.txt.
  • platform/glib/svg/custom/getscreenctm-in-mixed-content-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/getscreenctm-in-mixed-content-expected.txt.
  • platform/glib/svg/custom/getscreenctm-in-scrollable-div-area-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/getscreenctm-in-scrollable-div-area-expected.txt.
  • platform/glib/svg/custom/getscreenctm-in-scrollable-div-area-nested-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/getscreenctm-in-scrollable-div-area-nested-expected.txt.
  • platform/glib/svg/custom/getscreenctm-in-scrollable-svg-area-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/getscreenctm-in-scrollable-svg-area-expected.txt.
  • platform/glib/svg/custom/glyph-selection-arabic-forms-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/glyph-selection-arabic-forms-expected.txt.
  • platform/glib/svg/custom/glyph-selection-bidi-mirror-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/glyph-selection-bidi-mirror-expected.txt.
  • platform/glib/svg/custom/glyph-selection-non-bmp-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/glyph-selection-non-bmp-expected.txt.
  • platform/glib/svg/custom/glyph-setting-d-attribute-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/glyph-setting-d-attribute-expected.txt.
  • platform/glib/svg/custom/gradient-cycle-detection-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/gradient-cycle-detection-expected.txt.
  • platform/glib/svg/custom/gradient-deep-referencing-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/gradient-deep-referencing-expected.txt.
  • platform/glib/svg/custom/hit-test-path-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/hit-test-path-expected.txt.
  • platform/glib/svg/custom/hit-test-path-stroke-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/hit-test-path-stroke-expected.txt.
  • platform/glib/svg/custom/image-parent-translation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/image-parent-translation-expected.txt.
  • platform/glib/svg/custom/image-rescale-clip-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/image-rescale-clip-expected.txt.
  • platform/glib/svg/custom/invalid-lengthlist-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/invalid-lengthlist-expected.txt.
  • platform/glib/svg/custom/invisible-text-after-scrolling-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/invisible-text-after-scrolling-expected.txt.
  • platform/glib/svg/custom/js-late-clipPath-and-object-creation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/js-late-clipPath-and-object-creation-expected.txt.
  • platform/glib/svg/custom/js-late-clipPath-creation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/js-late-clipPath-creation-expected.txt.
  • platform/glib/svg/custom/js-late-gradient-and-object-creation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/js-late-gradient-and-object-creation-expected.txt.
  • platform/glib/svg/custom/js-late-gradient-creation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/js-late-gradient-creation-expected.txt.
  • platform/glib/svg/custom/js-late-pattern-and-object-creation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/js-late-pattern-and-object-creation-expected.txt.
  • platform/glib/svg/custom/js-late-pattern-creation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/js-late-pattern-creation-expected.txt.
  • platform/glib/svg/custom/js-update-stop-linked-gradient-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/js-update-stop-linked-gradient-expected.txt.
  • platform/glib/svg/custom/linking-a-03-b-preserveAspectRatio-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/linking-a-03-b-preserveAspectRatio-expected.txt.
  • platform/glib/svg/custom/linking-a-03-b-transform-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/linking-a-03-b-transform-expected.txt.
  • platform/glib/svg/custom/linking-a-03-b-viewBox-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/linking-a-03-b-viewBox-expected.txt.
  • platform/glib/svg/custom/linking-a-03-b-viewBox-transform-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/linking-a-03-b-viewBox-transform-expected.txt.
  • platform/glib/svg/custom/linking-a-03-b-viewTarget-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/linking-a-03-b-viewTarget-expected.txt.
  • platform/glib/svg/custom/linking-a-03-b-zoomAndPan-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/linking-a-03-b-zoomAndPan-expected.txt.
  • platform/glib/svg/custom/marker-opacity-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/marker-opacity-expected.txt.
  • platform/glib/svg/custom/marker-overflow-clip-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/marker-overflow-clip-expected.txt.
  • platform/glib/svg/custom/massive-coordinates-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/massive-coordinates-expected.txt.
  • platform/glib/svg/custom/mouse-move-on-svg-container-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/mouse-move-on-svg-container-expected.txt.
  • platform/glib/svg/custom/mouse-move-on-svg-container-standalone-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/mouse-move-on-svg-container-standalone-expected.txt.
  • platform/glib/svg/custom/mouse-move-on-svg-root-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/mouse-move-on-svg-root-expected.txt.
  • platform/glib/svg/custom/mouse-move-on-svg-root-standalone-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/mouse-move-on-svg-root-standalone-expected.txt.
  • platform/glib/svg/custom/no-inherited-dashed-stroke-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/no-inherited-dashed-stroke-expected.txt.
  • platform/glib/svg/custom/non-opaque-filters-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/non-opaque-filters-expected.txt.
  • platform/glib/svg/custom/object-sizing-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/object-sizing-expected.txt.
  • platform/glib/svg/custom/object-sizing-explicit-height-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/object-sizing-explicit-height-expected.txt.
  • platform/glib/svg/custom/object-sizing-explicit-width-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/object-sizing-explicit-width-expected.txt.
  • platform/glib/svg/custom/object-sizing-explicit-width-height-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/object-sizing-explicit-width-height-expected.txt.
  • platform/glib/svg/custom/path-textPath-simulation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/path-textPath-simulation-expected.txt.
  • platform/glib/svg/custom/path-zero-strokewidth-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/path-zero-strokewidth-expected.txt.
  • platform/glib/svg/custom/pattern-cycle-detection-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/pattern-cycle-detection-expected.txt.
  • platform/glib/svg/custom/pattern-deep-referencing-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/pattern-deep-referencing-expected.txt.
  • platform/glib/svg/custom/pattern-incorrect-tiling-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/pattern-incorrect-tiling-expected.txt.
  • platform/glib/svg/custom/pattern-referencing-preserve-aspect-ratio-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/pattern-referencing-preserve-aspect-ratio-expected.txt.
  • platform/glib/svg/custom/percentage-of-html-parent-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/percentage-of-html-parent-expected.txt.
  • platform/glib/svg/custom/preserve-aspect-ratio-syntax-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/preserve-aspect-ratio-syntax-expected.txt.
  • platform/glib/svg/custom/recursive-filter-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/recursive-filter-expected.txt.
  • platform/glib/svg/custom/recursive-gradient-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/recursive-gradient-expected.txt.
  • platform/glib/svg/custom/recursive-mask-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/recursive-mask-expected.txt.
  • platform/glib/svg/custom/recursive-pattern-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/recursive-pattern-expected.txt.
  • platform/glib/svg/custom/relative-sized-content-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/relative-sized-content-expected.txt.
  • platform/glib/svg/custom/relative-sized-content-with-resources-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/relative-sized-content-with-resources-expected.txt.
  • platform/glib/svg/custom/relative-sized-deep-shadow-tree-content-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/relative-sized-deep-shadow-tree-content-expected.txt.
  • platform/glib/svg/custom/relative-sized-image-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/relative-sized-image-expected.txt.
  • platform/glib/svg/custom/relative-sized-inner-svg-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/relative-sized-inner-svg-expected.txt.
  • platform/glib/svg/custom/relative-sized-shadow-tree-content-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/relative-sized-shadow-tree-content-expected.txt.
  • platform/glib/svg/custom/relative-sized-use-on-symbol-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/relative-sized-use-on-symbol-expected.txt.
  • platform/glib/svg/custom/repaint-shadow-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/repaint-shadow-expected.txt.
  • platform/glib/svg/custom/shape-rendering-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/shape-rendering-expected.txt.
  • platform/glib/svg/custom/shapes-supporting-markers-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/shapes-supporting-markers-expected.txt.
  • platform/glib/svg/custom/stroke-width-click-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/stroke-width-click-expected.txt.
  • platform/glib/svg/custom/stroke-width-large-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/stroke-width-large-expected.txt.
  • platform/glib/svg/custom/svg-curve-with-relative-coordinates-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/svg-curve-with-relative-coordinates-expected.txt.
  • platform/glib/svg/custom/svg-fonts-in-text-controls-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/svg-fonts-in-text-controls-expected.txt.
  • platform/glib/svg/custom/svg-fonts-segmented-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/svg-fonts-segmented-expected.txt.
  • platform/glib/svg/custom/svg-fonts-with-no-element-reference-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/svg-fonts-with-no-element-reference-expected.txt.
  • platform/glib/svg/custom/svg-overflow-types-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/svg-overflow-types-expected.txt.
  • platform/glib/svg/custom/text-ctm-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-ctm-expected.txt.
  • platform/glib/svg/custom/text-hit-test-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-hit-test-expected.txt.
  • platform/glib/svg/custom/text-image-opacity-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-image-opacity-expected.txt.
  • platform/glib/svg/custom/text-letter-spacing-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-letter-spacing-expected.txt.
  • platform/glib/svg/custom/text-linking-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-linking-expected.txt.
  • platform/glib/svg/custom/text-repaint-including-stroke-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-repaint-including-stroke-expected.txt.
  • platform/glib/svg/custom/text-rotation-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-rotation-expected.txt.
  • platform/glib/svg/custom/text-x-dx-lists-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-x-dx-lists-expected.txt.
  • platform/glib/svg/custom/text-x-dy-lists-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-x-dy-lists-expected.txt.
  • platform/glib/svg/custom/text-x-override-in-tspan-child-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-x-override-in-tspan-child-expected.txt.
  • platform/glib/svg/custom/text-xy-updates-SVGList-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-xy-updates-SVGList-expected.txt.
  • platform/glib/svg/custom/text-xy-updates-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/text-xy-updates-expected.txt.
  • platform/glib/svg/custom/tref-update-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/tref-update-expected.txt.
  • platform/glib/svg/custom/use-clipped-hit-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-clipped-hit-expected.txt.
  • platform/glib/svg/custom/use-detach-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-detach-expected.txt.
  • platform/glib/svg/custom/use-dynamic-append-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-dynamic-append-expected.txt.
  • platform/glib/svg/custom/use-on-g-containing-use-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-on-g-containing-use-expected.txt.
  • platform/glib/svg/custom/use-on-g-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-on-g-expected.txt.
  • platform/glib/svg/custom/use-on-rect-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-on-rect-expected.txt.
  • platform/glib/svg/custom/use-on-symbol-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-on-symbol-expected.txt.
  • platform/glib/svg/custom/use-on-use-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-on-use-expected.txt.
  • platform/glib/svg/custom/use-referencing-nonexisting-symbol-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-referencing-nonexisting-symbol-expected.txt.
  • platform/glib/svg/custom/use-transform-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/use-transform-expected.txt.
  • platform/glib/svg/custom/viewbox-syntax-expected.txt: Renamed from LayoutTests/platform/gtk/svg/custom/viewbox-syntax-expected.txt.
  • platform/glib/svg/dom/SVGPathSegList-segment-modification-expected.txt: Renamed from LayoutTests/platform/gtk/svg/dom/SVGPathSegList-segment-modification-expected.txt.
  • platform/glib/svg/filters/feBlend-all-blendmodes-expected.txt: Renamed from LayoutTests/platform/gtk/svg/filters/feBlend-all-blendmodes-expected.txt.
  • platform/glib/svg/filters/feColorMatrix-values-expected.txt: Renamed from LayoutTests/platform/gtk/svg/filters/feColorMatrix-values-expected.txt.
  • platform/glib/svg/filters/feComposite-expected.txt: Renamed from LayoutTests/platform/gtk/svg/filters/feComposite-expected.txt.
  • platform/glib/svg/filters/filter-on-filter-for-text-expected.txt: Renamed from LayoutTests/platform/gtk/svg/filters/filter-on-filter-for-text-expected.txt.
  • platform/glib/svg/filters/sourceAlpha-expected.txt: Renamed from LayoutTests/platform/gtk/svg/filters/sourceAlpha-expected.txt.
  • platform/glib/svg/foreignObject/no-crash-with-svg-content-in-html-document-expected.txt: Renamed from LayoutTests/platform/gtk/svg/foreignObject/no-crash-with-svg-content-in-html-document-expected.txt.
  • platform/glib/svg/foreignObject/svg-document-as-direct-child-expected.txt: Renamed from LayoutTests/platform/gtk/svg/foreignObject/svg-document-as-direct-child-expected.txt.
  • platform/glib/svg/hixie/error/002-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/error/002-expected.txt.
  • platform/glib/svg/hixie/error/003-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/error/003-expected.txt.
  • platform/glib/svg/hixie/error/010-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/error/010-expected.txt.
  • platform/glib/svg/hixie/error/011-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/error/011-expected.txt.
  • platform/glib/svg/hixie/links/002-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/links/002-expected.txt.
  • platform/glib/svg/hixie/processing-model/003-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/processing-model/003-expected.txt.
  • platform/glib/svg/hixie/processing-model/004-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/processing-model/004-expected.txt.
  • platform/glib/svg/hixie/rendering-model/004-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/rendering-model/004-expected.txt.
  • platform/glib/svg/hixie/viewbox/preserveAspectRatio/002-expected.txt: Renamed from LayoutTests/platform/gtk/svg/hixie/viewbox/preserveAspectRatio/002-expected.txt.
  • platform/glib/svg/in-html/circle-expected.txt: Renamed from LayoutTests/platform/gtk/svg/in-html/circle-expected.txt.
  • platform/glib/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-auto-expected.txt: Renamed from LayoutTests/platform/gtk/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-auto-expected.txt.
  • platform/glib/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-defaults-expected.txt: Renamed from LayoutTests/platform/gtk/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-defaults-expected.txt.
  • platform/glib/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-hidden-expected.txt: Renamed from LayoutTests/platform/gtk/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-hidden-expected.txt.
  • platform/glib/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-scroll-expected.txt: Renamed from LayoutTests/platform/gtk/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-scroll-expected.txt.
  • platform/glib/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-visible-expected.txt: Renamed from LayoutTests/platform/gtk/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-visible-expected.txt.
  • platform/glib/svg/repaint/filter-repaint-expected.txt: Renamed from LayoutTests/platform/gtk/svg/repaint/filter-repaint-expected.txt.
  • platform/glib/svg/repaint/inner-svg-change-viewPort-relative-expected.txt: Renamed from LayoutTests/platform/gtk/svg/repaint/inner-svg-change-viewPort-relative-expected.txt.
  • platform/glib/svg/text/bidi-embedded-direction-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/bidi-embedded-direction-expected.txt.
  • platform/glib/svg/text/bidi-text-query-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/bidi-text-query-expected.txt.
  • platform/glib/svg/text/font-size-below-point-five-2-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/font-size-below-point-five-2-expected.txt.
  • platform/glib/svg/text/font-size-below-point-five-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/font-size-below-point-five-expected.txt.
  • platform/glib/svg/text/foreignObject-repaint-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/foreignObject-repaint-expected.txt.
  • platform/glib/svg/text/scaled-font-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/scaled-font-expected.txt.
  • platform/glib/svg/text/scaling-font-with-geometric-precision-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/scaling-font-with-geometric-precision-expected.txt.
  • platform/glib/svg/text/selection-background-color-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/selection-background-color-expected.txt.
  • platform/glib/svg/text/selection-styles-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/selection-styles-expected.txt.
  • platform/glib/svg/text/small-fonts-2-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/small-fonts-2-expected.txt.
  • platform/glib/svg/text/small-fonts-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/small-fonts-expected.txt.
  • platform/glib/svg/text/text-fonts-02-t-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/text-fonts-02-t-expected.txt.
  • platform/glib/svg/text/text-intro-05-t-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/text-intro-05-t-expected.txt.
  • platform/glib/svg/text/text-text-01-b-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/text-text-01-b-expected.txt.
  • platform/glib/svg/text/text-text-03-b-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/text-text-03-b-expected.txt.
  • platform/glib/svg/text/text-text-05-t-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/text-text-05-t-expected.txt.
  • platform/glib/svg/text/text-vkern-on-horizontal-text-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/text-vkern-on-horizontal-text-expected.txt.
  • platform/glib/svg/text/text-ws-01-t-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/text-ws-01-t-expected.txt.
  • platform/glib/svg/text/text-ws-02-t-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/text-ws-02-t-expected.txt.
  • platform/glib/svg/text/textPathBoundsBug-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/textPathBoundsBug-expected.txt.
  • platform/glib/svg/text/tspan-dynamic-positioning-expected.txt: Renamed from LayoutTests/platform/gtk/svg/text/tspan-dynamic-positioning-expected.txt.
  • platform/glib/svg/transforms/svg-css-transforms-clip-path-expected.txt: Renamed from LayoutTests/platform/gtk/svg/transforms/svg-css-transforms-clip-path-expected.txt.
  • platform/glib/svg/transforms/svg-css-transforms-expected.txt: Renamed from LayoutTests/platform/gtk/svg/transforms/svg-css-transforms-expected.txt.
  • platform/glib/svg/wicd/test-rightsizing-a-expected.txt: Renamed from LayoutTests/platform/gtk/svg/wicd/test-rightsizing-a-expected.txt.
  • platform/glib/svg/zoom/page/zoom-foreignObject-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/page/zoom-foreignObject-expected.txt.
  • platform/glib/svg/zoom/page/zoom-hixie-rendering-model-004-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/page/zoom-hixie-rendering-model-004-expected.txt.
  • platform/glib/svg/zoom/page/zoom-mask-with-percentages-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/page/zoom-mask-with-percentages-expected.txt.
  • platform/glib/svg/zoom/page/zoom-svg-as-relative-image-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/page/zoom-svg-as-relative-image-expected.txt.
  • platform/glib/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt.
  • platform/glib/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt.
  • platform/glib/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt.
  • platform/glib/svg/zoom/text/zoom-foreignObject-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/text/zoom-foreignObject-expected.txt.
  • platform/glib/svg/zoom/text/zoom-hixie-rendering-model-004-expected.txt: Renamed from LayoutTests/platform/gtk/svg/zoom/text/zoom-hixie-rendering-model-004-expected.txt.
  • platform/glib/transforms/2d/hindi-rotated-expected.txt: Renamed from LayoutTests/platform/gtk/transforms/2d/hindi-rotated-expected.txt.
  • platform/glib/transforms/3d/general/perspective-units-expected.txt: Renamed from LayoutTests/platform/gtk/transforms/3d/general/perspective-units-expected.txt.
  • platform/glib/transforms/svg-vs-css-expected.txt: Renamed from LayoutTests/platform/gtk/transforms/svg-vs-css-expected.txt.
  • platform/glib/webgl/1.0.3/conformance/context/context-lost-restored-expected.txt: Renamed from LayoutTests/platform/gtk/webgl/1.0.3/conformance/context/context-lost-restored-expected.txt.
  • platform/glib/webgl/1.0.3/conformance/extensions/webgl-compressed-texture-size-limit-expected.txt: Renamed from LayoutTests/platform/gtk/webgl/1.0.3/conformance/extensions/webgl-compressed-texture-size-limit-expected.txt.
  • platform/glib/webgl/1.0.3/conformance/glsl/misc/shaders-with-name-conflicts-expected.txt: Renamed from LayoutTests/platform/gtk/webgl/1.0.3/conformance/glsl/misc/shaders-with-name-conflicts-expected.txt.
  • platform/glib/webgl/1.0.3/conformance/misc/webgl-specific-expected.txt: Renamed from LayoutTests/platform/gtk/webgl/1.0.3/conformance/misc/webgl-specific-expected.txt.
  • platform/glib/webgl/1.0.3/conformance/rendering/point-no-attributes-expected.txt: Renamed from LayoutTests/platform/gtk/webgl/1.0.3/conformance/rendering/point-no-attributes-expected.txt.
  • platform/glib/webgl/1.0.3/conformance/textures/texture-copying-feedback-loops-expected.txt: Renamed from LayoutTests/platform/gtk/webgl/1.0.3/conformance/textures/texture-copying-feedback-loops-expected.txt.
  • platform/wpe/accessibility/add-children-pseudo-element-expected.txt: Removed.
  • platform/wpe/accessibility/aria-fallback-roles-expected.txt: Removed.
  • platform/wpe/accessibility/aria-hidden-negates-no-visibility-expected.txt: Removed.
  • platform/wpe/accessibility/aria-label-on-label-element-expected.txt: Removed.
  • platform/wpe/accessibility/aria-labelledby-overrides-aria-label-expected.txt: Removed.
  • platform/wpe/accessibility/aria-labelledby-overrides-label-expected.txt: Removed.
  • platform/wpe/accessibility/aria-option-role-expected.txt: Removed.
  • platform/wpe/accessibility/aria-roledescription-expected.txt: Removed.
  • platform/wpe/accessibility/aria-switch-sends-notification-expected.txt: Removed.
  • platform/wpe/accessibility/aria-tab-roles-expected.txt: Removed.
  • platform/wpe/accessibility/aria-table-attributes-expected.txt: Removed.
  • platform/wpe/accessibility/aria-table-content-expected.txt: Removed.
  • platform/wpe/accessibility/aria-toggle-button-with-title-expected.txt: Removed.
  • platform/wpe/accessibility/auto-fill-crash-expected.txt: Removed.
  • platform/wpe/accessibility/button-with-aria-haspopup-role-expected.txt: Removed.
  • platform/wpe/accessibility/deleting-iframe-destroys-axcache-expected.txt: Removed.
  • platform/wpe/accessibility/dimensions-include-descendants-expected.txt: Removed.
  • platform/wpe/accessibility/double-nested-inline-element-missing-from-tree-expected.txt: Removed.
  • platform/wpe/accessibility/empty-image-with-title-expected.txt: Removed.
  • platform/wpe/accessibility/file-upload-button-stringvalue-expected.txt: Removed.
  • platform/wpe/accessibility/help-text-expected.txt: Removed.
  • platform/wpe/accessibility/image-map1-expected.txt: Removed.
  • platform/wpe/accessibility/inline-continuations-expected.txt: Removed.
  • platform/wpe/accessibility/label-with-pseudo-elements-expected.txt: Removed.
  • platform/wpe/accessibility/list-detection-expected.txt: Removed.
  • platform/wpe/accessibility/media-emits-object-replacement-expected.txt: Removed.
  • platform/wpe/accessibility/menu-list-crash2-expected.txt: Removed.
  • platform/wpe/accessibility/menu-list-sends-change-notification-expected.txt: Removed.
  • platform/wpe/accessibility/minimal-table-with-aria-is-data-table-expected.txt: Removed.
  • platform/wpe/accessibility/radio-button-title-label-expected.txt: Removed.
  • platform/wpe/accessibility/render-counter-text-expected.txt: Removed.
  • platform/wpe/accessibility/roles-computedRoleString-expected.txt: Removed.
  • platform/wpe/accessibility/set-selected-text-range-contenteditable-expected.txt: Removed.
  • platform/wpe/accessibility/svg-remote-element-expected.txt: Removed.
  • platform/wpe/accessibility/tabindex-elements-are-accessible-expected.txt: Removed.
  • platform/wpe/accessibility/table-cells-roles-expected.txt: Removed.
  • platform/wpe/accessibility/table-column-headers-with-captions-expected.txt: Removed.
  • platform/wpe/accessibility/table-roles-hierarchy-expected.txt: Removed.
  • platform/wpe/accessibility/text-alternative-calculation-hidden-nodes-expected.txt: Removed.
  • platform/wpe/animations/3d/change-transform-in-end-event-expected.txt: Removed.
  • platform/wpe/animations/3d/state-at-end-event-transform-expected.txt: Removed.
  • platform/wpe/animations/state-at-end-event-expected.txt: Removed.
  • platform/wpe/compositing/repaint/invalidations-on-composited-layers-with-subpixel-positions-expected.txt: Removed.
  • platform/wpe/crypto/subtle/aes-cbc-cfb-decrypt-malformed-parameters-expected.txt: Removed.
  • platform/wpe/crypto/subtle/aes-cbc-cfb-encrypt-malformed-parameters-expected.txt: Removed.
  • platform/wpe/crypto/subtle/aes-export-key-malformed-parameters-expected.txt: Removed.
  • platform/wpe/crypto/subtle/aes-generate-key-malformed-parameters-expected.txt: Removed.
  • platform/wpe/crypto/subtle/aes-import-key-malformed-parameters-expected.txt: Removed.
  • platform/wpe/crypto/subtle/ec-generate-key-malformed-parameters-expected.txt: Removed.
  • platform/wpe/crypto/subtle/ecdh-derive-bits-length-limits-expected.txt: Removed.
  • platform/wpe/crypto/subtle/ecdh-import-spki-key-ecdh-identifier-expected.txt: Removed.
  • platform/wpe/crypto/subtle/rsa-generate-key-malformed-parameters-expected.txt: Removed.
  • platform/wpe/crypto/subtle/rsa-import-key-malformed-parameters-expected.txt: Removed.
  • platform/wpe/fetch/fetch-url-serialization-expected.txt: Removed.
  • platform/wpe/fullscreen/full-screen-placeholder-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/broken-utf8-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/close-before-open-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/close-code-and-reason-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/close-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/closed-when-entering-page-cache-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/compressed-control-frame-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/deflate-frame-invalid-parameter-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/deflate-frame-parameter-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/error-event-ready-state-non-existent-url-with-server-responding-404-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/extensions-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/fragmented-control-frame-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-error-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-extensions-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-invalid-http-version-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-maxlength-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-mismatch-protocol-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-more-accept-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-more-extensions-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-more-protocol-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-no-accept-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-no-connection-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-no-cr-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-no-upgrade-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-accept-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-extensions-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-header-value-sec-websocket-protocol-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-non-ascii-status-line-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-null-char-in-status-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-prepended-null-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-fail-by-wrong-accept-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/handshake-ok-with-http-version-beyond-1_1-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-comp-bit-onoff-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-invalid-parameter-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-parameter-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-set-bfinal-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-split-frames-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-unsolicited-negotiation-response-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/imported/blink/permessage-deflate-window-bits-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/interleaved-fragments-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/invalid-continuation-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/invalid-encode-length-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/invalid-masked-frames-from-server-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/long-control-frame-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/long-invalid-header-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/reserved-bits-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/reserved-opcodes-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/secure-cookie-secure-connection-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/send-object-tostring-check-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/simple-wss-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/stop-on-resume-in-error-handler-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/too-long-payload-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/websocket-allowed-setting-cookie-as-third-party-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/websocket-cookie-overwrite-behavior-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/websocket-event-target-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/workers/close-code-and-reason-expected.txt: Removed.
  • platform/wpe/http/tests/websocket/tests/hybi/workers/close-expected.txt: Removed.
  • platform/wpe/js/dom/constructor-length-expected.txt: Removed.
  • platform/wpe/media/media-source/media-source-append-before-last-range-no-quota-exceeded-expected.txt: Removed.
  • platform/wpe/scrollbars/basic-scrollbar-expected.txt: Removed.
  • platform/wpe/scrollbars/disabled-scrollbar-expected.txt: Removed.
  • platform/wpe/scrollbars/listbox-scrollbar-combinations-expected.txt: Removed.
  • platform/wpe/scrollbars/scrollbar-buttons-expected.txt: Removed.
  • platform/wpe/scrollbars/scrollbar-orientation-expected.txt: Removed.
  • platform/wpe/scrollbars/scrollbar-selectors-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/g-dirLTR-ubNone-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/g-dirLTR-ubOverride-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/g-dirRTL-ubNone-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/g-dirRTL-ubOverride-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/text-dirLTR-ubNone-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/text-dirLTR-ubOverride-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/text-dirRTL-ubNone-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/text-dirRTL-ubOverride-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/tspan-dirLTR-ubOverride-in-rtl-context-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/tspan-dirNone-ubOverride-in-rtl-context-expected.txt: Removed.
  • platform/wpe/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-rtl-context-expected.txt: Removed.
  • platform/wpe/svg/as-background-image/background-image-preserveaspectRatio-support-expected.txt: Removed.
  • platform/wpe/svg/as-border-image/svg-as-border-image-2-expected.txt: Removed.
  • platform/wpe/svg/as-border-image/svg-as-border-image-expected.txt: Removed.
  • platform/wpe/svg/as-image/animated-svg-as-image-expected.txt: Removed.
  • platform/wpe/svg/as-image/animated-svg-as-image-no-fixed-intrinsic-size-expected.txt: Removed.
  • platform/wpe/svg/as-image/animated-svg-as-image-same-image-expected.txt: Removed.
  • platform/wpe/svg/as-image/animated-svg-repaints-completely-in-hidpi-expected.txt: Removed.
  • platform/wpe/svg/as-image/image-respects-deviceScaleFactor-expected.txt: Removed.
  • platform/wpe/svg/as-image/img-preserveAspectRatio-support-1-expected.txt: Removed.
  • platform/wpe/svg/as-image/img-preserveAspectRatio-support-2-expected.txt: Removed.
  • platform/wpe/svg/as-image/same-image-two-instances-expected.txt: Removed.
  • platform/wpe/svg/as-image/svg-image-change-content-size-expected.txt: Removed.
  • platform/wpe/svg/as-object/object-box-sizing-no-width-height-expected.txt: Removed.
  • platform/wpe/svg/batik/filters/filterRegions-expected.txt: Removed.
  • platform/wpe/svg/batik/masking/maskRegions-expected.txt: Removed.
  • platform/wpe/svg/batik/paints/patternPreserveAspectRatioA-expected.txt: Removed.
  • platform/wpe/svg/batik/paints/patternRegions-expected.txt: Removed.
  • platform/wpe/svg/batik/paints/patternRegions-positioned-objects-expected.txt: Removed.
  • platform/wpe/svg/batik/text/textAnchor2-expected.txt: Removed.
  • platform/wpe/svg/batik/text/textAnchor3-expected.txt: Removed.
  • platform/wpe/svg/batik/text/textEffect3-expected.txt: Removed.
  • platform/wpe/svg/carto.net/combobox-expected.txt: Removed.
  • platform/wpe/svg/carto.net/slider-expected.txt: Removed.
  • platform/wpe/svg/css/getComputedStyle-basic-expected.txt: Removed.
  • platform/wpe/svg/css/text-gradient-shadow-expected.txt: Removed.
  • platform/wpe/svg/css/text-shadow-multiple-expected.txt: Removed.
  • platform/wpe/svg/custom/SVGMatrix-interface-expected.txt: Removed.
  • platform/wpe/svg/custom/SVGPoint-matrixTransform-expected.txt: Removed.
  • platform/wpe/svg/custom/absolute-sized-content-with-resources-expected.txt: Removed.
  • platform/wpe/svg/custom/alignment-baseline-modes-expected.txt: Removed.
  • platform/wpe/svg/custom/animate-path-morphing-expected.txt: Removed.
  • platform/wpe/svg/custom/broken-internal-references-expected.txt: Removed.
  • platform/wpe/svg/custom/bug78807-expected.txt: Removed.
  • platform/wpe/svg/custom/circle-move-invalidation-expected.txt: Removed.
  • platform/wpe/svg/custom/control-points-for-S-and-T-expected.txt: Removed.
  • platform/wpe/svg/custom/coords-relative-units-transforms-expected.txt: Removed.
  • platform/wpe/svg/custom/createImageElement2-expected.txt: Removed.
  • platform/wpe/svg/custom/dominant-baseline-hanging-expected.txt: Removed.
  • platform/wpe/svg/custom/dominant-baseline-modes-expected.txt: Removed.
  • platform/wpe/svg/custom/embedding-external-svgs-expected.txt: Removed.
  • platform/wpe/svg/custom/empty-mask-expected.txt: Removed.
  • platform/wpe/svg/custom/feComponentTransfer-Discrete-expected.txt: Removed.
  • platform/wpe/svg/custom/feComponentTransfer-Linear-expected.txt: Removed.
  • platform/wpe/svg/custom/feComponentTransfer-Table-expected.txt: Removed.
  • platform/wpe/svg/custom/focus-ring-expected.txt: Removed.
  • platform/wpe/svg/custom/font-face-cascade-order-expected.txt: Removed.
  • platform/wpe/svg/custom/font-face-simple-expected.txt: Removed.
  • platform/wpe/svg/custom/foreign-object-skew-expected.txt: Removed.
  • platform/wpe/svg/custom/foreignObject-crash-on-hover-expected.txt: Removed.
  • platform/wpe/svg/custom/getTransformToElement-expected.txt: Removed.
  • platform/wpe/svg/custom/getscreenctm-in-mixed-content-expected.txt: Removed.
  • platform/wpe/svg/custom/getscreenctm-in-scrollable-div-area-expected.txt: Removed.
  • platform/wpe/svg/custom/getscreenctm-in-scrollable-div-area-nested-expected.txt: Removed.
  • platform/wpe/svg/custom/getscreenctm-in-scrollable-svg-area-expected.txt: Removed.
  • platform/wpe/svg/custom/glyph-selection-arabic-forms-expected.txt: Removed.
  • platform/wpe/svg/custom/glyph-selection-bidi-mirror-expected.txt: Removed.
  • platform/wpe/svg/custom/glyph-selection-non-bmp-expected.txt: Removed.
  • platform/wpe/svg/custom/glyph-setting-d-attribute-expected.txt: Removed.
  • platform/wpe/svg/custom/gradient-cycle-detection-expected.txt: Removed.
  • platform/wpe/svg/custom/gradient-deep-referencing-expected.txt: Removed.
  • platform/wpe/svg/custom/hit-test-path-expected.txt: Removed.
  • platform/wpe/svg/custom/hit-test-path-stroke-expected.txt: Removed.
  • platform/wpe/svg/custom/image-parent-translation-expected.txt: Removed.
  • platform/wpe/svg/custom/image-rescale-clip-expected.txt: Removed.
  • platform/wpe/svg/custom/invalid-lengthlist-expected.txt: Removed.
  • platform/wpe/svg/custom/invisible-text-after-scrolling-expected.txt: Removed.
  • platform/wpe/svg/custom/js-late-clipPath-and-object-creation-expected.txt: Removed.
  • platform/wpe/svg/custom/js-late-clipPath-creation-expected.txt: Removed.
  • platform/wpe/svg/custom/js-late-gradient-and-object-creation-expected.txt: Removed.
  • platform/wpe/svg/custom/js-late-gradient-creation-expected.txt: Removed.
  • platform/wpe/svg/custom/js-late-pattern-and-object-creation-expected.txt: Removed.
  • platform/wpe/svg/custom/js-late-pattern-creation-expected.txt: Removed.
  • platform/wpe/svg/custom/js-update-stop-linked-gradient-expected.txt: Removed.
  • platform/wpe/svg/custom/linking-a-03-b-preserveAspectRatio-expected.txt: Removed.
  • platform/wpe/svg/custom/linking-a-03-b-transform-expected.txt: Removed.
  • platform/wpe/svg/custom/linking-a-03-b-viewBox-expected.txt: Removed.
  • platform/wpe/svg/custom/linking-a-03-b-viewBox-transform-expected.txt: Removed.
  • platform/wpe/svg/custom/linking-a-03-b-viewTarget-expected.txt: Removed.
  • platform/wpe/svg/custom/linking-a-03-b-zoomAndPan-expected.txt: Removed.
  • platform/wpe/svg/custom/marker-opacity-expected.txt: Removed.
  • platform/wpe/svg/custom/marker-overflow-clip-expected.txt: Removed.
  • platform/wpe/svg/custom/massive-coordinates-expected.txt: Removed.
  • platform/wpe/svg/custom/mouse-move-on-svg-container-expected.txt: Removed.
  • platform/wpe/svg/custom/mouse-move-on-svg-container-standalone-expected.txt: Removed.
  • platform/wpe/svg/custom/mouse-move-on-svg-root-expected.txt: Removed.
  • platform/wpe/svg/custom/mouse-move-on-svg-root-standalone-expected.txt: Removed.
  • platform/wpe/svg/custom/no-inherited-dashed-stroke-expected.txt: Removed.
  • platform/wpe/svg/custom/non-opaque-filters-expected.txt: Removed.
  • platform/wpe/svg/custom/object-sizing-expected.txt: Removed.
  • platform/wpe/svg/custom/object-sizing-explicit-height-expected.txt: Removed.
  • platform/wpe/svg/custom/object-sizing-explicit-width-expected.txt: Removed.
  • platform/wpe/svg/custom/object-sizing-explicit-width-height-expected.txt: Removed.
  • platform/wpe/svg/custom/path-textPath-simulation-expected.txt: Removed.
  • platform/wpe/svg/custom/path-zero-strokewidth-expected.txt: Removed.
  • platform/wpe/svg/custom/pattern-cycle-detection-expected.txt: Removed.
  • platform/wpe/svg/custom/pattern-deep-referencing-expected.txt: Removed.
  • platform/wpe/svg/custom/pattern-incorrect-tiling-expected.txt: Removed.
  • platform/wpe/svg/custom/pattern-referencing-preserve-aspect-ratio-expected.txt: Removed.
  • platform/wpe/svg/custom/percentage-of-html-parent-expected.txt: Removed.
  • platform/wpe/svg/custom/preserve-aspect-ratio-syntax-expected.txt: Removed.
  • platform/wpe/svg/custom/recursive-filter-expected.txt: Removed.
  • platform/wpe/svg/custom/recursive-gradient-expected.txt: Removed.
  • platform/wpe/svg/custom/recursive-mask-expected.txt: Removed.
  • platform/wpe/svg/custom/recursive-pattern-expected.txt: Removed.
  • platform/wpe/svg/custom/relative-sized-content-expected.txt: Removed.
  • platform/wpe/svg/custom/relative-sized-content-with-resources-expected.txt: Removed.
  • platform/wpe/svg/custom/relative-sized-deep-shadow-tree-content-expected.txt: Removed.
  • platform/wpe/svg/custom/relative-sized-image-expected.txt: Removed.
  • platform/wpe/svg/custom/relative-sized-inner-svg-expected.txt: Removed.
  • platform/wpe/svg/custom/relative-sized-shadow-tree-content-expected.txt: Removed.
  • platform/wpe/svg/custom/relative-sized-use-on-symbol-expected.txt: Removed.
  • platform/wpe/svg/custom/repaint-shadow-expected.txt: Removed.
  • platform/wpe/svg/custom/shape-rendering-expected.txt: Removed.
  • platform/wpe/svg/custom/shapes-supporting-markers-expected.txt: Removed.
  • platform/wpe/svg/custom/stroke-width-click-expected.txt: Removed.
  • platform/wpe/svg/custom/stroke-width-large-expected.txt: Removed.
  • platform/wpe/svg/custom/svg-curve-with-relative-coordinates-expected.txt: Removed.
  • platform/wpe/svg/custom/svg-fonts-in-text-controls-expected.txt: Removed.
  • platform/wpe/svg/custom/svg-fonts-segmented-expected.txt: Removed.
  • platform/wpe/svg/custom/svg-fonts-with-no-element-reference-expected.txt: Removed.
  • platform/wpe/svg/custom/svg-overflow-types-expected.txt: Removed.
  • platform/wpe/svg/custom/text-ctm-expected.txt: Removed.
  • platform/wpe/svg/custom/text-hit-test-expected.txt: Removed.
  • platform/wpe/svg/custom/text-image-opacity-expected.txt: Removed.
  • platform/wpe/svg/custom/text-letter-spacing-expected.txt: Removed.
  • platform/wpe/svg/custom/text-linking-expected.txt: Removed.
  • platform/wpe/svg/custom/text-repaint-including-stroke-expected.txt: Removed.
  • platform/wpe/svg/custom/text-rotation-expected.txt: Removed.
  • platform/wpe/svg/custom/text-x-dx-lists-expected.txt: Removed.
  • platform/wpe/svg/custom/text-x-dy-lists-expected.txt: Removed.
  • platform/wpe/svg/custom/text-x-override-in-tspan-child-expected.txt: Removed.
  • platform/wpe/svg/custom/text-xy-updates-SVGList-expected.txt: Removed.
  • platform/wpe/svg/custom/text-xy-updates-expected.txt: Removed.
  • platform/wpe/svg/custom/tref-update-expected.txt: Removed.
  • platform/wpe/svg/custom/use-clipped-hit-expected.txt: Removed.
  • platform/wpe/svg/custom/use-detach-expected.txt: Removed.
  • platform/wpe/svg/custom/use-dynamic-append-expected.txt: Removed.
  • platform/wpe/svg/custom/use-on-g-containing-use-expected.txt: Removed.
  • platform/wpe/svg/custom/use-on-g-expected.txt: Removed.
  • platform/wpe/svg/custom/use-on-rect-expected.txt: Removed.
  • platform/wpe/svg/custom/use-on-symbol-expected.txt: Removed.
  • platform/wpe/svg/custom/use-on-use-expected.txt: Removed.
  • platform/wpe/svg/custom/use-referencing-nonexisting-symbol-expected.txt: Removed.
  • platform/wpe/svg/custom/use-transform-expected.txt: Removed.
  • platform/wpe/svg/custom/viewbox-syntax-expected.txt: Removed.
  • platform/wpe/svg/dom/SVGPathSegList-segment-modification-expected.txt: Removed.
  • platform/wpe/svg/filters/feBlend-all-blendmodes-expected.txt: Removed.
  • platform/wpe/svg/filters/feColorMatrix-values-expected.txt: Removed.
  • platform/wpe/svg/filters/feComposite-expected.txt: Removed.
  • platform/wpe/svg/filters/filter-on-filter-for-text-expected.txt: Removed.
  • platform/wpe/svg/filters/sourceAlpha-expected.txt: Removed.
  • platform/wpe/svg/foreignObject/no-crash-with-svg-content-in-html-document-expected.txt: Removed.
  • platform/wpe/svg/foreignObject/svg-document-as-direct-child-expected.txt: Removed.
  • platform/wpe/svg/hixie/error/002-expected.txt: Removed.
  • platform/wpe/svg/hixie/error/003-expected.txt: Removed.
  • platform/wpe/svg/hixie/error/010-expected.txt: Removed.
  • platform/wpe/svg/hixie/error/011-expected.txt: Removed.
  • platform/wpe/svg/hixie/links/002-expected.txt: Removed.
  • platform/wpe/svg/hixie/processing-model/003-expected.txt: Removed.
  • platform/wpe/svg/hixie/processing-model/004-expected.txt: Removed.
  • platform/wpe/svg/hixie/rendering-model/004-expected.txt: Removed.
  • platform/wpe/svg/hixie/viewbox/preserveAspectRatio/002-expected.txt: Removed.
  • platform/wpe/svg/in-html/circle-expected.txt: Removed.
  • platform/wpe/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-auto-expected.txt: Removed.
  • platform/wpe/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-defaults-expected.txt: Removed.
  • platform/wpe/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-hidden-expected.txt: Removed.
  • platform/wpe/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-scroll-expected.txt: Removed.
  • platform/wpe/svg/overflow/overflow-on-outermost-svg-element-in-xhtml-visible-expected.txt: Removed.
  • platform/wpe/svg/repaint/filter-repaint-expected.txt: Removed.
  • platform/wpe/svg/repaint/inner-svg-change-viewPort-relative-expected.txt: Removed.
  • platform/wpe/svg/text/bidi-embedded-direction-expected.txt: Removed.
  • platform/wpe/svg/text/bidi-text-query-expected.txt: Removed.
  • platform/wpe/svg/text/font-size-below-point-five-2-expected.txt: Removed.
  • platform/wpe/svg/text/font-size-below-point-five-expected.txt: Removed.
  • platform/wpe/svg/text/foreignObject-repaint-expected.txt: Removed.
  • platform/wpe/svg/text/scaled-font-expected.txt: Removed.
  • platform/wpe/svg/text/scaling-font-with-geometric-precision-expected.txt: Removed.
  • platform/wpe/svg/text/selection-background-color-expected.txt: Removed.
  • platform/wpe/svg/text/selection-styles-expected.txt: Removed.
  • platform/wpe/svg/text/small-fonts-2-expected.txt: Removed.
  • platform/wpe/svg/text/small-fonts-expected.txt: Removed.
  • platform/wpe/svg/text/text-fonts-02-t-expected.txt: Removed.
  • platform/wpe/svg/text/text-intro-05-t-expected.txt: Removed.
  • platform/wpe/svg/text/text-text-01-b-expected.txt: Removed.
  • platform/wpe/svg/text/text-text-03-b-expected.txt: Removed.
  • platform/wpe/svg/text/text-text-05-t-expected.txt: Removed.
  • platform/wpe/svg/text/text-vkern-on-horizontal-text-expected.txt: Removed.
  • platform/wpe/svg/text/text-ws-01-t-expected.txt: Removed.
  • platform/wpe/svg/text/text-ws-02-t-expected.txt: Removed.
  • platform/wpe/svg/text/textPathBoundsBug-expected.txt: Removed.
  • platform/wpe/svg/text/tspan-dynamic-positioning-expected.txt: Removed.
  • platform/wpe/svg/transforms/svg-css-transforms-clip-path-expected.txt: Removed.
  • platform/wpe/svg/transforms/svg-css-transforms-expected.txt: Removed.
  • platform/wpe/svg/wicd/test-rightsizing-a-expected.txt: Removed.
  • platform/wpe/svg/zoom/page/zoom-foreignObject-expected.txt: Removed.
  • platform/wpe/svg/zoom/page/zoom-hixie-rendering-model-004-expected.txt: Removed.
  • platform/wpe/svg/zoom/page/zoom-mask-with-percentages-expected.txt: Removed.
  • platform/wpe/svg/zoom/page/zoom-svg-as-relative-image-expected.txt: Removed.
  • platform/wpe/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Removed.
  • platform/wpe/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Removed.
  • platform/wpe/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Removed.
  • platform/wpe/svg/zoom/text/zoom-foreignObject-expected.txt: Removed.
  • platform/wpe/svg/zoom/text/zoom-hixie-rendering-model-004-expected.txt: Removed.
  • platform/wpe/transforms/2d/hindi-rotated-expected.txt: Removed.
  • platform/wpe/transforms/3d/general/perspective-units-expected.txt: Removed.
  • platform/wpe/transforms/svg-vs-css-expected.txt: Removed.
  • platform/wpe/webgl/1.0.3/conformance/context/context-lost-restored-expected.txt: Removed.
  • platform/wpe/webgl/1.0.3/conformance/extensions/webgl-compressed-texture-size-limit-expected.txt: Removed.
  • platform/wpe/webgl/1.0.3/conformance/glsl/misc/shaders-with-name-conflicts-expected.txt: Removed.
  • platform/wpe/webgl/1.0.3/conformance/misc/webgl-specific-expected.txt: Removed.
  • platform/wpe/webgl/1.0.3/conformance/rendering/point-no-attributes-expected.txt: Removed.
  • platform/wpe/webgl/1.0.3/conformance/textures/texture-copying-feedback-loops-expected.txt: Removed.
11:06 AM Changeset in webkit [261700] by Wenson Hsieh
  • 4 edits in trunk/Source

[macOS] Update the placeholder icon image for attachment elements with progress="0"
https://bugs.webkit.org/show_bug.cgi?id=211898
<rdar://problem/63203900>

Reviewed by Timothy Hatcher.

Source/WebCore:

Refactor logic for creating an attachment placeholder image into a separate helper method, with a
WebKitAdditions implementation when HAVE(SYSTEM_ATTACHMENT_PLACEHOLDER_ICON) is defined.

  • rendering/RenderThemeMac.mm:

(WebCore::createAttachmentPlaceholderImage):
(WebCore::paintAttachmentIconPlaceholder):

Source/WTF:

Add a new flag for HAVE(SYSTEM_ATTACHMENT_PLACEHOLDER_ICON).

  • wtf/PlatformHave.h:
11:05 AM Changeset in webkit [261699] by keith_miller@apple.com
  • 3 edits
    3 adds in trunk

iteration bytecodes need to handle osr exiting from inlined getter frames
https://bugs.webkit.org/show_bug.cgi?id=211873

Reviewed by Saam Barati.

JSTests:

  • stress/for-of-done-getter-osr-exit-inlined.js: Added.

(let.d.get done):
(let.d.get value):

  • stress/for-of-next-getter-osr-exit-inlined.js: Added.

(let.x.get next):
(foo):

  • stress/for-of-value-getter-osr-exit-inlined.js: Added.

(let.d.get value):
(let.d.get done):

Source/JavaScriptCore:

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::slow_path_checkpoint_osr_exit_from_inlined_call):

11:02 AM Changeset in webkit [261698] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit

Crash in PDFPlugin::ensureDataBufferLength
<rdar://problem/62932155> and https://bugs.webkit.org/show_bug.cgi?id=211818

Reviewed by Tim Horton.

There's some currently unreproducible case(s) where a range request finishes
while there's no m_data to append it to.

It's fair hardening to handle that case.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::getResourceBytesAtPositionMainThread): Handle null m_data.
(WebKit::PDFPlugin::ensureDataBufferLength): Ditto.

10:54 AM Changeset in webkit [261697] by Ryan Haddad
  • 5 edits in branches/safari-609-branch/Tools

Cherry-pick r261629. rdar://problem/62213993

Run-webkit-tests should not fail if all tests found to run are skipped.
https://bugs.webkit.org/show_bug.cgi?id=210880

Reviewed by Jonathan Bedard.

  • Scripts/webkitpy/layout_tests/controllers/manager.py: (Manager.run): Added a check to see if we skiped all tests. If so We return a successful exit code as we performed as expected.
  • Scripts/webkitpy/layout_tests/models/test_run_results.py: (RunDetails.init): Added in an additional class variable to be used as a way to record an all skipped result check.
  • Scripts/webkitpy/layout_tests/run_webkit_tests.py: (main): Added a all test skipped check and we return early with the exit code.
  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Added a new test and removed the old ones that no longer test the correct functionality. (RunTest.test_all_tests_skipped): (RunTest.test_no_tests_found): Deleted. (RunTest.test_no_tests_found_2): Deleted.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@261629 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9:59 AM Changeset in webkit [261696] by pvollan@apple.com
  • 2 edits in trunk/Source/WebKit

[iOS] Update message filtering rules in the WebContent process' sandbox
https://bugs.webkit.org/show_bug.cgi?id=211188

Reviewed by Brent Fulgham.

Based on telemetry and local testing, update the message filtering rules in the WebContent process' sandbox on iOS.
Messages that have not been observed being in use, should be denied.

No new tests, covered by existing tests.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
9:11 AM Changeset in webkit [261695] by Chris Dumez
  • 7 edits in trunk/Source

Regression(r254856) Family Health iOS app is broken due to lack for WebSQL support
https://bugs.webkit.org/show_bug.cgi?id=211896
<rdar://problem/63025045>

Reviewed by Maciej Stachowiak.

Source/WebCore:

Add RuntimeApplicationChecks function to identify Family Health app on iOS.

  • platform/RuntimeApplicationChecks.h:
  • platform/cocoa/RuntimeApplicationChecksCocoa.mm:

(WebCore::IOSApplication::isFamilyHealthApp):

Source/WebKitLegacy/mac:

Re-enable WebSQL support for Family Health iOS app with a linked-on-after check.

  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):

Source/WTF:

  • wtf/spi/darwin/dyldSPI.h:
8:35 AM Changeset in webkit [261694] by Andres Gonzalez
  • 7 edits in trunk/Source/WebCore

AXIsolatedTree::updateChildren needs to apply pending changes before updating the given node.
https://bugs.webkit.org/show_bug.cgi?id=211790

Reviewed by Chris Fleizach.

Covered by multiple tests.

AXIsolatedTree::updateChildren may be fired for an isolated object that
is still in the pending changes list, and thus nodeForID would fail,
causing the isolated tree to not be updated. This patch calls
applyPendingChanges before updating the given node's children.
Additional logging was added including the logging of the AXObjectCache
object hierarchy.

  • accessibility/AXLogger.cpp:

(WebCore::AXLogger::log):
(WebCore::operator<<):

  • accessibility/AXLogger.h:
  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::remove):
(WebCore::AXObjectCache::postNotification):
(WebCore::AXObjectCache::performDeferredCacheUpdate):
(WebCore::AXObjectCache::updateIsolatedTree):

  • accessibility/AXObjectCache.h:
  • accessibility/isolatedtree/AXIsolatedTree.cpp:

(WebCore::AXIsolatedTree::updateNode):
(WebCore::AXIsolatedTree::updateSubtree):
(WebCore::AXIsolatedTree::updateChildren):
(WebCore::AXIsolatedTree::focusedNode):
(WebCore::AXIsolatedTree::removeNode):
(WebCore::AXIsolatedTree::removeSubtree):
(WebCore::AXIsolatedTree::applyPendingChanges):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

8:35 AM WebKitGTK/2.28.x edited by Philippe Normand
(diff)
8:31 AM Changeset in webkit [261693] by Andres Gonzalez
  • 2 edits in trunk/Source/WebCore

Fix for crash in LayoutTest in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=211894

Reviewed by Chris Fleizach.

Several LayoutTests.

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]): Check backing object for nullity before dereferencing.

8:30 AM Changeset in webkit [261692] by Andres Gonzalez
  • 2 edits in trunk/Source/WebCore

AXIsolatedObject::isOnScreen needs to be dispatched to the main thread.
https://bugs.webkit.org/show_bug.cgi?id=211893

Reviewed by Chris Fleizach.

Covered by existing tests.

  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::children): Split assert into two lines for readability.
(WebCore::AXIsolatedObject::isOnScreen const): Forward to associated AXObject and dispatch to the main thread.

8:29 AM Changeset in webkit [261691] by Andres Gonzalez
  • 3 edits in trunk/Source/WebCore

Implementation of AXIsolatedObject::hasPlainText.
https://bugs.webkit.org/show_bug.cgi?id=211892

Reviewed by Chris Fleizach.

Covered by existing tests.

Adding hasPlainText to the cached properties map.

  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::initializeAttributeData):
(WebCore::AXIsolatedObject::hasPlainText const): Deleted, inlined in header.

  • accessibility/isolatedtree/AXIsolatedObject.h:
7:46 AM Changeset in webkit [261690] by svillar@igalia.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::createContextWebGL): downcast m_context to
WebGLRenderingContextBase before calling isXRCompatible(). It's created
as a WebGLRenderingContextBase but stored in a CanvasRenderingContext.

7:34 AM Changeset in webkit [261689] by commit-queue@webkit.org
  • 4 edits in trunk

stress/array-buffer-view-watchpoint-can-be-fired-in-really-add-in-dfg.js failing on ppc64le and s390x
https://bugs.webkit.org/show_bug.cgi?id=211724

Patch by Michael Catanzaro <Michael Catanzaro> on 2020-05-14
Reviewed by Carlos Alberto Lopez Perez.

JSTests:

This test is broken on ppc64le and s390x, so skip it.

  • stress/array-buffer-view-watchpoint-can-be-fired-in-really-add-in-dfg.js:

Tools:

Add architecture detection for PowerPC and S/390.

  • Scripts/run-jsc-stress-tests:
7:16 AM WebKitGTK/2.28.x edited by Philippe Normand
(diff)
6:34 AM Changeset in webkit [261688] by Diego Pino Garcia
  • 2 edits in trunk/LayoutTests

[GTK] Gardening, update expectations after r261609
https://bugs.webkit.org/show_bug.cgi?id=211890

Unreviewed gardening.

r261609 fixed a regression in WebGL test and removed the failures
introduced from test expectations. However, some of the failures
removed are still failing. Reintroduce failing tests.

  • platform/gtk/TestExpectations:
5:44 AM Changeset in webkit [261687] by Andres Gonzalez
  • 3 edits in trunk/Source/WebCore

Replacing and inserting text need to be dispatched to the main thread.
https://bugs.webkit.org/show_bug.cgi?id=211863

Reviewed by Chris Fleizach.

Covered by existing tests.

In isolated tree mode WebAccessibilityObjectWrapper accessibilityReplaceRange
and InsertText may be called on the secondary thread. Thus the AXIsolatedObject
implementation of this functionality needs to forward these calls to the
associated AXObject on the main thread.

  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::replaceTextInRange):
(WebCore::AXIsolatedObject::insertText):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityReplaceRange:withText:]):
(-[WebAccessibilityObjectWrapper accessibilityInsertText:]):

5:31 AM Changeset in webkit [261686] by graouts@webkit.org
  • 7 edits in trunk

Cursor should not update on a 20ms timer
https://bugs.webkit.org/show_bug.cgi?id=211884
<rdar://problem/63220368>

Reviewed by Antti Koivisto.

Source/WebCore:

Update the cursor during page rendering rather than using a 20ms timer.

  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::clear):
(WebCore::EventHandler::updateCursorIfNeeded):
(WebCore::EventHandler::handleMouseMoveEvent):
(WebCore::EventHandler::scheduleCursorUpdate):
(WebCore::EventHandler::cursorUpdateTimerFired): Deleted.

  • page/EventHandler.h:
  • page/Page.cpp:

(WebCore::Page::updateRendering):

LayoutTests:

Update a (flaky) test to not use setTimeout() to test a cursor change and instead use requestAnimationFrame()
since cursor updates are now guaranteed to be run before the next requestAnimationFrame() callback.

  • fast/events/mouse-cursor-no-mousemove.html:
  • platform/mac-wk1/TestExpectations:
5:07 AM Changeset in webkit [261685] by commit-queue@webkit.org
  • 4 edits in trunk

[GStreamer] webrtc/disable-encryption.html is a crashing flaky
https://bugs.webkit.org/show_bug.cgi?id=211166

Patch by Philippe Normand <pnormand@igalia.com> on 2020-05-14
Reviewed by Xabier Rodriguez-Calvar.

Source/WebCore:

Make sure the audio and video mediastream source elements are correctly removed and disposed
from their parent bin when resetting the track sources. Before this change there was a
possibility of disposing the elements while they were still in PLAYING state.

  • platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp:

(WebCore::_WebKitMediaStreamSrc::SourceData::reset):
(WebCore::webkitMediaStreamSrcDispose):
(WebCore::webkitMediaStreamSrcRemoveTrackByType):

LayoutTests:

  • platform/gtk/TestExpectations: Marking webrtc/disable-encryption.html as no longer flaky.
3:30 AM Changeset in webkit [261684] by Adrian Perez de Castro
  • 15 edits in trunk/Source

Non-unified build fixed, mid May 2020 edition
https://bugs.webkit.org/show_bug.cgi?id=211859

Source/WebCore:

Unreviewed build.

No new tests needed.

  • Modules/indexeddb/server/UniqueIDBDatabase.cpp: Add missing IDBBindingUtilities.h and

IDBSerializationContext.h includes.

  • accessibility/AccessibilityRenderObject.cpp: Add missing EventHandler.h include.
  • css/parser/CSSParserToken.cpp: Add missing RuntimeEnabledFeatures.h include.
  • editing/gtk/WebContentReaderGtk.cpp: Add missing Blob.h include.
  • html/canvas/OESTextureHalfFloat.cpp: Add missing ExtensionsGL.h include.
  • page/ShareDataReader.h: Add missing ExceptionOr.h include.
  • rendering/ContentfulPaintChecker.cpp: Add missing RenderView.h include.
  • rendering/style/StyleRareInheritedData.h: Add missing RenderStyleConstants.h and

wtf/OptionSet.h includes.

  • rendering/style/StyleRareNonInheritedData.h: Add missing TouchAction.h and wtf/OptionSet.h

includes.

  • style/StyleAdjuster.h: Add missing RenderStyleConstants.h include and forward declaration

for WebCore::EventTarget.

Source/WebKit:

Unreviewed build fix.

  • UIProcess/gtk/Clipboard.cpp: Add missing includes for <mutex>, wtf/NeverDestroyed.h, and

wtf/text/WTFString.h.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Add missing

SharedBufferDataReference.h include.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.h: Add missing namespace to usage of

the WebCore::SharedBuffer type.

2:58 AM Changeset in webkit [261683] by aboya@igalia.com
  • 9 edits in trunk/Source/WebCore

[GStreamer] Playbin3 track switch rework
https://bugs.webkit.org/show_bug.cgi?id=211623

Reviewed by Philippe Normand.

This patch reworks how track selection and reporting of selected
tracks is done in the player.

The following found limitations and assumptions in current GStreamer
have informed this patch:

a) Although the API for playbin3 is designed to be able to accept any
number of tracks of any kind, this is not supported in practice.

b) The first track of each type is always selected. Even in playbin3
mode, looking for GST_STREAM_FLAG_SELECT is not a reliable method, as
in most cases the demuxer does not set it at all. [qtdemux never sets
it at all, and matroskademux only sets it in certain cases.]

c) Sending GST_EVENT_SELECT_STREAMS is only safe at certain moments.
It's not safe before pre-roll, after EOS or during the handling of
another SELECT_STREAMS.

d) Selecting text tracks with playbin APIs is not relevant. All text
tracks are already being picked by WebKitTextCombiner, unaffected by
playbin track selection.

e) Tracks requested in a GST_EVENT_SELECT_STREAMS are eventually
selected. On the other hand, looking at
GST_MESSAGE_STREAMS_SELECTED's content is not reliable, as this has
been seen to miss tracks depending on thread luck.

This patch takes the points above into account to rework how track
selection is handled in MediaPlayerPrivateGStreamer and fix the
following issues:

1) In playbin3 mode, no track was marked as selected initially,
because of reliance on GST_STREAM_FLAG_SELECT.

2) In playbin2 mode, sometimes tracks would not be initially marked as
selected. This occurred because of reliance on the "selected" property
in inputselector sinkpads, whose initialization is racy -- it can
occur after the track has been added and picked up by WebKit.

3) In playbin3 mode, the limitations explained before has been honored
to make track selection stable, delaying SELECT_STREAMS events until
they are safe to send.

This patch doesn't introduce significative behavior changes, rather
aiming for improving the stabilitity of the player. Existing tests
should provide enough coverage.

  • platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp:

(WebCore::AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer):
(WebCore::AudioTrackPrivateGStreamer::setEnabled):

  • platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
(WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio):
(WebCore::MediaPlayerPrivateGStreamer::updateEnabledVideoTrack):
(WebCore::MediaPlayerPrivateGStreamer::updateEnabledAudioTrack):
(WebCore::MediaPlayerPrivateGStreamer::playbin3SendSelectStreamsIfAppropriate):
(WebCore::MediaPlayerPrivateGStreamer::updateTracks):
(WebCore::MediaPlayerPrivateGStreamer::handleSyncMessage):
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):
(WebCore::MediaPlayerPrivateGStreamer::didEnd):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
  • platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp:

(WebCore::VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer):
(WebCore::VideoTrackPrivateGStreamer::setSelected):

  • platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h:
2:47 AM Changeset in webkit [261682] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[WPE] Tools/wpe/install-dependencies fails due to missing pipenv
https://bugs.webkit.org/show_bug.cgi?id=211849

Patch by Philippe Normand <pnormand@igalia.com> on 2020-05-14
Reviewed by Žan Doberšek.

Ubuntu Bionic doesn't ship pipenv. So fallback to the pip3 install path. Also remove the
libpng12-dev fallback, this doesn't seem necessary any longer (tested on a Ubuntu Bionic
docker).

  • gtk/install-dependencies:
  • wpe/install-dependencies:
2:41 AM Changeset in webkit [261681] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/Tools

[Flatpak SDK] Path references shouldn't point to the sandbox in compile_commands.json
https://bugs.webkit.org/show_bug.cgi?id=209901

Patch by Philippe Normand <pnormand@igalia.com> on 2020-05-14
Reviewed by Žan Doberšek.

Add ccls to the SDK. It can then be used through a wrapper script by Emacs's lsp-mode.

  • buildstream/elements/sdk-build-depends/rapidjson.bst: Added.
  • buildstream/elements/sdk-platform.bst:
  • buildstream/elements/sdk/ccls.bst: Added.
1:26 AM Changeset in webkit [261680] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[GStreamer] Can't replay blob videos in web.whatsapp.com
https://bugs.webkit.org/show_bug.cgi?id=192540

Patch by Philippe Normand <pnormand@igalia.com> on 2020-05-14
Reviewed by Xabier Rodriguez-Calvar.

This is a variant of bug 211627 but I could reproduce it only for videos. Unfortunately I
wasn't able to write a reliable test for this.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::updateBufferingStatus): Prevent the fill timer from
running forever after buffering completed.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webKitWebSrcMakeRequest): Don't buffer blobs, this doesn't seem useful as they're already
in memory anyway.

12:45 AM Changeset in webkit [261679] by svillar@igalia.com
  • 12 edits in trunk/Source/WebCore

[WebXR] Implement WebGLRenderingContextBase::makeXRCompatible()
https://bugs.webkit.org/show_bug.cgi?id=211506

Reviewed by Youenn Fablet.

The WebXR spec defines a way to mark a WebGLRenderingContext as
compatible with WebXR. This can be made at creation time (by setting the
xrCompatible) attribute or by calling makeXRCompatible().

There are several web-platform-tests testing/using this feature, however we
cannot enable them right now as we need some other features to be implemented
first.

  • Modules/webxr/NavigatorWebXR.cpp:

(WebCore::NavigatorWebXR::xr): Do not pass ScriptExecutionContext and use
the Navigator's instead.

  • Modules/webxr/NavigatorWebXR.h: Ditto.
  • Modules/webxr/NavigatorWebXR.idl: Ditto.
  • Modules/webxr/WebXRSystem.h: expose ensureImmersiveXRDeviceIsSelected() and

hasActiveImmersiveXRDevice() to be used from canvas and the rendering context.

  • html/HTMLCanvasElement.cpp:

(WebCore::HTMLCanvasElement::createContextWebGL): call
ensureImmersiveXRDeviceIsSelected() if xrCompatible is set.

  • html/canvas/WebGLContextAttributes.idl: Added xrCompatible.
  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::WebGLRenderingContextBase):
Initialize m_isXRCompatible.
(WebCore::WebGLRenderingContextBase::makeXRCompatible): Implemented.

  • html/canvas/WebGLRenderingContextBase.h: Defined makeXRCompatible().
  • html/canvas/WebGLRenderingContextBase.idl: Added makeXRCompatible().
  • platform/graphics/GraphicsContextGLAttributes.h: Added xrCompatible.
  • testing/Internals.cpp:

(WebCore::Internals::xrTest): Simplified the usage of NavigatorWebXR.

Note: See TracTimeline for information about the timeline view.