Timeline



Jun 1, 2018:

11:54 PM Changeset in webkit [232435] by Wenson Hsieh
  • 3 edits
    2 adds in trunk

[Extra zoom mode] The user should always be able to double tap to zoom to a scale of at least 1
https://bugs.webkit.org/show_bug.cgi?id=186209
<rdar://problem/40529255>

Reviewed by Tim Horton.

Source/WebKit:

Tweaks the way double-tap-to-zoom scales are determined in extra zoom mode. Rather than zooming to make the 50th
and 90th percentiles of text in the document legible, only consider the 90th percentile of text size when
determining zoom scale, and fix the other potential zoom scale at 1; additionally, if the zoom scales are close
(within 0.3 of each other), snap the lower zoom scale to the higher value.

This results in the following changes in behavior:

  • Enables double tap to zoom in cases where all the text in the page is already legible.
  • On pages with mobile viewports, usually allows the user to toggle between initial scale and a scale of 1.
  • If a significant portion of text is unusually small, the zoomed-in scale may exceed 1.

Test: fast/events/extrazoom/double-tap-to-zoom-with-large-text.html

  • WebProcess/WebPage/ViewGestureGeometryCollector.cpp:

(WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
(WebKit::ViewGestureGeometryCollector::computeTextLegibilityScales):

LayoutTests:

Add a test to verify that double tapping zooms in on a page where all the text is large enough to be legible at
initial scale.

  • fast/events/extrazoom/double-tap-to-zoom-with-large-text-expected.txt: Added.
  • fast/events/extrazoom/double-tap-to-zoom-with-large-text.html: Added.
9:09 PM Changeset in webkit [232434] by rniwa@webkit.org
  • 6 edits
    2 adds in trunk

Editor can hold references to Documents after you navigate away
https://bugs.webkit.org/show_bug.cgi?id=186215

Reviewed by Simon Fraser.

Source/WebCore:

Clear the various member variables that can hold onto a document in Editor::clear and FrameSelection::prepareForDestruction.

Test: editing/selection/navigation-clears-editor-state.html

  • editing/Editor.cpp:

(WebCore::Editor::clear):

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

(WebCore::FrameSelection::FrameSelection):
(WebCore::FrameSelection::prepareForDestruction):

  • editing/FrameSelection.h:

LayoutTests:

Added a regression test.

  • editing/selection/navigation-clears-editor-state-expected.txt: Added.
  • editing/selection/navigation-clears-editor-state.html: Added.
5:21 PM Changeset in webkit [232433] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

ResourceLoader::cancel() shouldn't synchronously fire load event on document
https://bugs.webkit.org/show_bug.cgi?id=185284

Revert the erroneous change to SSFontSelector::beginLoadTimerFired(), which broke CancelLoading.CancelFontSubresource.
FrameLoader::loadDone calls checkCompleted, not checkLoadComplete so we still need to call checkLoadComplete here.

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::beginLoadTimerFired):

5:07 PM Changeset in webkit [232432] by bshafiei@apple.com
  • 2 edits in tags/Safari-606.1.18.2/Source/WebKit

Revert r231903. rdar://problem/40690985

5:05 PM Changeset in webkit [232431] by bshafiei@apple.com
  • 7 edits in tags/Safari-606.1.18.2/Source

Versioning.

5:04 PM Changeset in webkit [232430] by rniwa@webkit.org
  • 1 edit
    10 moves in trunk/LayoutTests

Move tests in LayoutTests/editing to appropriate subdirectories
https://bugs.webkit.org/show_bug.cgi?id=186212

Rubber-stamped by Wenson Hsieh.

Moved the following four tests in LayoutTests/editing to its subdirectories.

  • editing/input/composition-underline-color-expected-mismatch.html: Moved from editing/composition-underline-color-expected-mismatch.html.
  • editing/input/composition-underline-color.html: Move from editing/composition-underline-color.html.
  • editing/input/marked-text-appearance-expected-mismatch.html: Copied from LayoutTests/editing/marked-text-appearance-expected-mismatch.html.
  • editing/input/marked-text-appearance.html: Moved from editing/marked-text-appearance.html.
  • editing/selection/rtl-to-ltr-editing-word-move-spin-expected.txt: Moved from editing/rtl-to-ltr-editing-word-move-spin-expected.txt.
  • editing/selection/rtl-to-ltr-editing-word-move-spin.html: Moved from editing/rtl-to-ltr-editing-word-move-spin.html.
  • editing/selection/simple-line-layout-caret-is-gone-expected.txt: Moved from editing/simple-line-layout-caret-is-gone-expected.txt.
  • editing/selection/simple-line-layout-caret-is-gone.html: Moved from editing/simple-line-layout-caret-is-gone.html.
  • editing/style/apply-style-iframe-crash-expected.txt: Moved from editing/apply-style-iframe-crash-expected.txt.
  • editing/style/apply-style-iframe-crash.html: Moved from editing/apply-style-iframe-crash.html.
5:02 PM Changeset in webkit [232429] by bshafiei@apple.com
  • 1 copy in tags/Safari-606.1.18.2

New tag.

4:25 PM Changeset in webkit [232428] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Skip fetch/api/redirect/redirect-method.html and fetch/api/redirect/redirect-method-worker.html on macOS debug.
https://bugs.webkit.org/show_bug.cgi?id=184365

Unreviewed test gardening.

Patch by David Fenton <david_fenton@apple.com> on 2018-06-01

  • platform/mac/TestExpectations:
4:22 PM Changeset in webkit [232427] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Keyboard focus should exit fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=185617
rdar://problem/34697938

Patch by Jeremy Jones <jeremyj@apple.com> on 2018-06-01
Reviewed by Ryosuke Niwa.

Source/WebCore:

No opensource test because feature is not enabled.

While in element fullscreen, initiating keyboard focus should exit fullscreen in iOS.

Improve fullscreen testability by exposing isAnimatingFullScreen.

  • dom/Document.h:
  • testing/Internals.cpp:

(WebCore::Internals::isAnimatingFullScreen const):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit:

While in element fullscreen, initiating keyboard focus should exit fullscreen in iOS.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::elementDidFocus):

4:19 PM Changeset in webkit [232426] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Don't continue playing in background when auto-picture-in-picture is disabled.
https://bugs.webkit.org/show_bug.cgi?id=186089
rdar://problem/40314314

Patch by Jeremy Jones <jeremyj@apple.com> on 2018-06-01
Reviewed by Eric Carlson.

No new tests because we don't have a way to test auto-pip.

With the refactoring work done in VideoFullscreenInterfaceAVKit, HTMLMediaElement no longer has to anticipate
auto-pip when if it should pause on suspend. Instead VideoFullscreenInterfaceAVKit proactively updates
videoFullscreenMode, so checking for PIP is sufficient.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::shouldOverrideBackgroundPlaybackRestriction const):

4:15 PM Changeset in webkit [232425] by Kocsen Chung
  • 1 copy in tags/Safari-605.3.5

Tag Safari-605.3.5.

4:09 PM Changeset in webkit [232424] by Chris Dumez
  • 5 edits in trunk/Source

REGRESSION (r231456): Colloquy is broken
https://bugs.webkit.org/show_bug.cgi?id=186197
<rdar://problem/40722960>

Reviewed by Timothy Hatcher.

Restore pre-r231456 behavior for Colloquy app so that it works again.

Source/WebCore:

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::openURL):

  • page/Settings.yaml:

Source/WebKitLegacy/mac:

  • WebView/WebView.mm:

(-[WebView _needsFrameNameFallbackToIdQuirk]):
(-[WebView _preferencesChanged:]):

3:56 PM Changeset in webkit [232423] by Chris Dumez
  • 11 edits in trunk/Source

Regression(r230567): Unable to log into twitter.com in private sessions
https://bugs.webkit.org/show_bug.cgi?id=186205
<rdar://problem/40670799>

Reviewed by Youenn Fablet.

We were using the same SWServer for all private sessions and the SWServer's sessionID would
be legacyPrivateSessionID(). As a result, the service worker's sessionID would be legacyPrivateSessionID()
Source/WebCore:

as well and would not match the sessionID of its client pages. This sessionID mismatch was
causing the breakage.

Instead of using the same SWServer of all private sessions, we now go back to using a SWServer
per private session. However, we now make sure that the SWServer gets destroyed whenever its
corresponding session gets destroyed.

  • workers/service/server/SWServer.cpp:

(WebCore::SWServer::~SWServer):

Source/WebKit:

as well and would not match the sessionID of its client pages. This sessionID mismatch was
causing the breakage.

Instead of using the same SWServer of all private sessions, we now go back to using a SWServer
per private session. However, we now make sure that the SWServer gets destroyed whenever its
corresponding session gets destroyed.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::destroySession):

  • NetworkProcess/cache/CacheStorageEngine.cpp:

(WebKit::CacheStorage::Engine::from):

  • StorageProcess/StorageProcess.cpp:

(WebKit::StorageProcess::destroySession):
(WebKit::StorageProcess::swServerForSession):

  • StorageProcess/StorageProcess.h:
  • StorageProcess/StorageProcess.messages.in:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled):

  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::~WebsiteDataStore):

(WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback):

  • UIProcess/WebsiteData/WebsiteDataStore.h:

(WebKit::WebsiteDataStore::weakPtrFactory const):
Fix memory leak caused by a reference cycle between the WebsiteDataStore and its
WebResourceLoadStatisticsStore, by using WeakPtr to break the cycle. This was causing
us to leak WebsiteDataStore objects, which would prevent the destruction of sessions.

3:55 PM Changeset in webkit [232422] by Kocsen Chung
  • 13 edits in branches/safari-605-branch/Source

Revert "Apply patch. rdar://problem/40688638"

3:54 PM Changeset in webkit [232421] by dbates@webkit.org
  • 6 edits
    11 adds in trunk/Tools

Add some tests for lldb_webkit.py
https://bugs.webkit.org/show_bug.cgi?id=183744

Reviewed by Alexey Proskuryakov.

Adds some tests to ensure we do not regress LLDB pretty-printing of WTF::StringImpl
and WTF::String objects.

The tests make use of the LLDB Python API (lldb.py) and a simple debug-built test
program, lldbWebKitTester, to run. For now, we only support building lldbWebKitTester
on Mac.

  • Makefile: Build the simple test tool lldbWebKitTester on Mac.
  • Scripts/build-lldbwebkittester: Added.

(buildProjectOrDie):

  • Scripts/dump-class-layout: Extract logic to compute the path to the LLDB Python module

from here to Scripts/webkitpy/common/system/systemhost.py so that it can used by both
this script and lldb/lldb_webkit_unittest.py. Also import the lldb module at the top of
the file and take advantage of Python's default error semantics to throw an exception
if the import fails instead of handling it ourself. This has the side effect that we
now always import the LLDB Python module even if this script is invoked with --help.
If this turns out to be a significant annoyance then we can look to dynamically import
the module as we did before this change.
(webkit_build_dir):
(main):
(developer_dir): Deleted.
(import_lldb): Deleted.

  • Scripts/webkitpy/common/checkout/scm/scm_unittest.py: Update FIXME comment to reflect

that fact that test-webkitpy does not support class and module fixtures. This is because
test-webkitpy currently implements parallelism by breaking down existing test classes
into individual test methods itself and having each worker run exactly one test method (via
unittest.TestLoader.loadTestsFromName()) at a time. As a result of this reorganization,
setUpModule()/setUpClass() are called for each test method as opposed to once per test
class/test module.
(remove_dir): Ditto.

  • Scripts/webkitpy/common/system/systemhost.py:

(SystemHost):
(SystemHost.path_to_lldb_python_directory): Added.

  • Scripts/webkitpy/test/main.py:

(_find_lldb_webkit_tester): Returns whether there exists a Debug or Release-built lldbWebKitTester.
(_build_lldb_webkit_tester): Builds lldbWebKitTester. For now, we only support building
lldbWebKitTester on Mac.
(main): Add Tools/lldb to the test search path if the platform has lldb.py.
(Tester.run): Pass a boolean as to whether we will run the lldb_webkit unit tests.
(Tester._run_tests): Modified to take a boolean as to whether to run the lldb_webkit unit tests.
If we will run these tests then build lldbWebKitTester if it has not already been built as the
unit tests depend on this program.

  • lldb/lldbWebKitTester/Configurations/Base.xcconfig: Added.
  • lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig: Added.
  • lldb/lldbWebKitTester/Configurations/lldbWebKitTester.xcconfig: Added.
  • lldb/lldbWebKitTester/Makefile: Added.
  • lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Added.
  • lldb/lldbWebKitTester/main.cpp: Added.

(breakForTestingSummaryProviders):
(utf16String):
(testSummaryProviders):
(main):

  • lldb/lldb_webkit_unittest.py: Added.

(destroy_cached_debug_session):
(LLDBDebugSession):
(LLDBDebugSession.setup):
(LLDBDebugSession.tearDown):
(TestSummaryProviders):
(TestSummaryProviders.setUpClass):
(TestSummaryProviders._sbFrame):
(TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_null_string):
(TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_empty_string):
(TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_8bit_string):
(TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_16bit_string):
(TestSummaryProviders.serial_test_WTFString_SummaryProvider_null_string):
(TestSummaryProviders.serial_test_WTFString_SummaryProvider_empty_string):
(TestSummaryProviders.serial_test_WTFString_SummaryProvider_8bit_string):
(TestSummaryProviders.serial_test_WTFString_SummaryProvider_16bit_string):

3:34 PM Changeset in webkit [232420] by youenn@apple.com
  • 9 edits in trunk/Source

Add an option to restrict communication to localhost sockets
https://bugs.webkit.org/show_bug.cgi?id=186208

Reviewed by Eric Carlson.

Source/WebCore:

Covered by existing tests.
Add an option in LibWebRTCProvider to restrict to localhost sockets.
Use that option when Internals is used.

  • platform/mediastream/libwebrtc/LibWebRTCProvider.h:
  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState):

Source/WebKit:

Implement restriction to localhost sockets by setting any IP address to 127.0.0.1.
This is done on WebProcess side just before requesting to open the socket by NetworkProcess.

  • WebProcess/Network/webrtc/LibWebRTCNetwork.h:

(WebKit::LibWebRTCNetwork::disableNonLocalhostConnections):

  • WebProcess/Network/webrtc/LibWebRTCProvider.cpp:

(WebKit::LibWebRTCProvider::disableNonLocalhostConnections):
(WebKit::LibWebRTCProvider::registerMDNSName):

  • WebProcess/Network/webrtc/LibWebRTCProvider.h:
  • WebProcess/Network/webrtc/LibWebRTCSocketFactory.cpp:

(WebKit::prepareSocketAddress):
(WebKit::LibWebRTCSocketFactory::CreateServerTcpSocket):
(WebKit::LibWebRTCSocketFactory::CreateUdpSocket):
(WebKit::LibWebRTCSocketFactory::CreateClientTcpSocket):

  • WebProcess/Network/webrtc/LibWebRTCSocketFactory.h:
3:30 PM Changeset in webkit [232419] by rniwa@webkit.org
  • 19 edits in trunk

ResourceLoader::cancel() shouldn't synchronously fire load event on document
https://bugs.webkit.org/show_bug.cgi?id=185284
Source/WebCore:

Reviewed by Antti Koivisto.

Because a resource loading can be canceled as a node is removed a document or CachedResource is destructed,
it's not safe to synchronously fire load event on document upon cancelation. This patch makes the cancellation
of a resource load schedule m_checkTimer in FrameLoader to fire a load event asynchronously instead.

Specifically, this patch makes FrameLoader::loadDone call FrameLoader::scheduleCheckCompleted when the load
had failed or cancled instead of calling FrameLoader::checkCompleted which can synchronously fire load event.
To differentiate the two cases, new enum LoadCompletionType has been added to FrameLoader::loadDone and related
functions. To avoid calling the navigation delegate too early, the same abstraction for checkLoadComplete()
has been added in the form of FrameLoader::subresourceLoadDone.

Unfortunately, delaying calls to checkCompleted() and checkLoadComplete() by a timer can result in client
callbacks such as didFinishLoadForFrame and didFailLoadWithError to never get called when the frame gets
detached from the parent after the last resource had stopped loading but before the timer fires. To preserve
these deleagte callbacks, this patch expedites the timer in FrameLoader::frameDetached and Page::goToItem by
by invoking newly added stopAllLoadersAndCheckCompleteness, which stops all loading and then immediately invokes
checkCompleted() and checkLoadComplete() synchronously if m_checkTimer had been started.

Tests: http/tests/preload/dynamic_removing_preload.html

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::beginLoadTimerFired): Removed superfluous call to checkLoadComplete since
cachedResourceLoader's loadDone would call checkLoadComplete anyway.

  • html/HTMLFrameOwnerElement.cpp:

(WebCore::HTMLFrameOwnerElement::disconnectContentFrame): Removed the misleading comment added in r140090.
Firefox DOES indeed fire unload event in the content document of a removed frame. While this comment made
it sound like this function isn't called when a frame is removed from the tree when in reality we simply
remove a frame prior to removing the node via disconnectSubframesIfNeeded.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::removeSubresourceLoader):

  • loader/DocumentLoader.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::FrameLoader):
(WebCore::FrameLoader::loadDone):
(WebCore::FrameLoader::subresourceLoadDone):
(WebCore::FrameLoader::checkCompleted): Added a release assert that this function is only called when it's safe
to execute scripts.
(WebCore::FrameLoader::checkTimerFired):
(WebCore::FrameLoader::checkCompletenessNow):Extracted from checkTimerFired.
(WebCore::FrameLoader::stopAllLoaders): Removed the code to stop m_checkTimer introduced in r53655.
Stopping the timer here would prevent FrameLoader::frameDetached to detect the case when stopping the loader
scheduled a load completion check. Also stopping this timer without clearing the corresponding booleans:
m_checkingLoadCompleteForDetachment and m_checkingLoadCompleteForDetachment is problematic. The assertion
r53655 addressed is now addressed by explicitly checking & clearing the timer in frameDetached.
(WebCore::FrameLoader::stopAllLoadersAndCheckCompleteness): Added.
(WebCore::FrameLoader::checkLoadCompleteForThisFrame): Avoid an early exit when the newly added boolean
m_checkingLoadCompleteForDetachment is set since m_isStopping is no longer set in frameDetached in order
to invoke didFailLoadWithError when detaching a frame.
(WebCore::FrameLoader::frameDetached): Call checkCompletenessNow in the case the frame had already been
completed loading. Also call stopAllLoadersAndCheckCompleteness in the case stopping loading would complete
the loading before stopping active DOM objects.

  • loader/FrameLoader.h:

(WebCore::FrameLoader::m_checkingLoadCompleteForDetachment): Added.

  • loader/FrameLoaderTypes.h:

(WebCore::LoadCompletionType): Added.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didFinishLoading):
(WebCore::SubresourceLoader::didFail):
(WebCore::SubresourceLoader::didCancel):
(WebCore::SubresourceLoader::notifyDone):

  • loader/SubresourceLoader.h:
  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::loadDone):

  • loader/cache/CachedResourceLoader.h:
  • page/Page.cpp:

(WebCore::Page::goToItem): Call stopAllLoadersAndCheckCompleteness instead of stopAllLoaders since stopping
loading here may complete loading.

LayoutTests:

<rdar://problem/39994507>

Reviewed by Antti Koivisto.

Fixed the tests as needed, and skipped more drag & drop tests in WebKitTestRunner as drag & drop isn't supported.

  • editing/pasteboard/drag-image-to-contenteditable-in-iframe.html: Fixed the test. Explicitly invoke

testRunner.waitUntilDone() to wait until the iframe is loaded. Because "load" event in DOM only fires after
all subframes are loaded but the load delegate callback fires as long as subresources in the main frame
had finished loading, DumpRenderTree would finish the test prematurely otherwise. The old code happens to
work before this patch because we happen to not invoke FrameLoader::checkComplete at the "right" moment.
The WebCore change now triggers such a check and prematurely end the test without this fix to the test.

  • http/tests/xmlhttprequest/reentrant-cancel-expected.txt:
  • http/tests/xmlhttprequest/reentrant-cancel.html: Canceling XHR inside addElement is no longer

firing load event synchronously as expected. Added a code to end the test after the load event.

  • http/wpt/service-workers/clone-opaque-being-loaded-response.html:
  • platform/mac-wk2/TestExpectations:
  • platform/wk2/TestExpectations:
2:40 PM Changeset in webkit [232418] by Kocsen Chung
  • 13 edits in branches/safari-605-branch/Source

Apply patch. rdar://problem/40688638

2:28 PM Changeset in webkit [232417] by rniwa@webkit.org
  • 8 edits in trunk/LayoutTests

Some tests for webkitdirectory API fail when tests are in an APFS file system
https://bugs.webkit.org/show_bug.cgi?id=186184

Reviewed by Chris Dumez.

On an APFS volume, files may not be listed in the lexicologically order and the size of a directory
may defer from that of HFS+. To make the test results consistent on either file systems,
sort file entries lexicologically by the name and list two possible directory sizes as the expectation.

Added a new helper function, shouldBeOneOfValues, which takes an array of values as the expectation.

  • editing/pasteboard/entries-api/datatransfer-items-drop-directoryReader.html:
  • editing/pasteboard/entries-api/datatransfer-items-drop-getAsEntry-expected.txt:
  • editing/pasteboard/entries-api/datatransfer-items-drop-getAsEntry.html:
  • fast/forms/file/entries-api/drag-folder-webkitEntries-expected.txt:
  • fast/forms/file/entries-api/drag-folder-webkitEntries.html:
  • fast/forms/file/entries-api/webkitdirectory-drag-folder.html:
  • resources/js-test.js:

(shouldBeOneOfValues): Added.

1:58 PM Changeset in webkit [232416] by Chris Dumez
  • 10 edits in trunk/Source/WebKit

Regression(r230876): Swipe navigation snapshot may get removed too early
https://bugs.webkit.org/show_bug.cgi?id=186168
<rdar://problem/39743617>

Reviewed by Tim Horton.

The swipe navigation snapshot would get removed too early when receiving a paint
event after requesting a history navigation but before the provisional load has
actually started. This is because of the asynchronous navigation policy decision
which occurs after requesting to navigate. To address the issue, we now start
listening for events only after the provisional load has started.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _didStartProvisionalLoadForMainFrame]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/Cocoa/ViewGestureController.cpp:

(WebKit::ViewGestureController::didStartProvisionalLoadForMainFrame):
(WebKit::ViewGestureController::didReachMainFrameLoadTerminalState):
(WebKit::ViewGestureController::didSameDocumentNavigationForMainFrame):

  • UIProcess/Cocoa/ViewGestureController.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::didStartProvisionalLoadForMainFrame):

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::endSwipeGesture):

  • UIProcess/mac/PageClientImplMac.h:
  • UIProcess/mac/PageClientImplMac.mm:

(WebKit::PageClientImpl::didStartProvisionalLoadForMainFrame):

  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::endSwipeGesture):

1:57 PM Changeset in webkit [232415] by aestes@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/bytecode/InByIdStatus.cpp

Fix the !ENABLE(DFG_JIT) build.

  • bytecode/InByIdStatus.cpp:

(JSC::InByIdStatus::computeFor):

1:52 PM Changeset in webkit [232414] by jiewen_tan@apple.com
  • 2 edits in trunk/Source/WebKit

Unreviewed, build fix for r232276.

iOS sandbox profiles don't preprocess macros. Therefore, remove the whole
macro condition block.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
1:41 PM Changeset in webkit [232413] by dbates@webkit.org
  • 4 edits in trunk/LayoutTests

http/tests/inspector/network/har/har-page.html should actually sort dumped cookies by name
https://bugs.webkit.org/show_bug.cgi?id=186137

Reviewed by Joseph Pecoraro.

JavaScript does not support comparison of String data types using the minus operator. Instead
implement the string comparator using relational operators and the identity operator.

  • http/tests/inspector/network/har/har-page-expected.txt:
  • http/tests/inspector/network/har/har-page.html:
  • platform/gtk/TestExpectations: Unskip test.
1:24 PM Changeset in webkit [232412] by bshafiei@apple.com
  • 1 delete in tags/Safari-#606.1.19.1

Remove tag.

1:13 PM Changeset in webkit [232411] by Wenson Hsieh
  • 2 edits in trunk/Source/JavaScriptCore

Fix the watchOS build after r232385
https://bugs.webkit.org/show_bug.cgi?id=186203

Reviewed by Keith Miller.

Add a missing header include for JSImmutableButterfly.

  • runtime/ArrayPrototype.cpp:
1:13 PM Changeset in webkit [232410] by sihui_liu@apple.com
  • 8 edits in trunk/Source

Stop using StorageTracker.db in LocalStorageDatabaseTracker
https://bugs.webkit.org/show_bug.cgi?id=186104

Reviewed by Geoffrey Garen.

Source/WebCore:

No behavior change.

  • platform/sql/SQLiteFileSystem.h:

Source/WebKit:

Stop using StorageTracker.db and stop caching origins in LocalStorageDatabaseTracker for efficiency
and simplicity. Since functions in LocalStorageDatabaseTracker are not frequently called, we get
little benefits from caching origins.

  • Platform/Logging.h:
  • UIProcess/API/C/WKKeyValueStorageManager.cpp:

(WKKeyValueStorageManagerGetStorageDetailsByOrigin):

  • UIProcess/WebStorage/LocalStorageDatabaseTracker.cpp:

(WebKit::LocalStorageDatabaseTracker::LocalStorageDatabaseTracker):
(WebKit::LocalStorageDatabaseTracker::didOpenDatabaseWithOrigin):
(WebKit::LocalStorageDatabaseTracker::deleteDatabaseWithOrigin):
(WebKit::LocalStorageDatabaseTracker::deleteAllDatabases):
(WebKit::LocalStorageDatabaseTracker::databasesModifiedSince):
(WebKit::LocalStorageDatabaseTracker::origins const):
(WebKit::LocalStorageDatabaseTracker::originDetails):
(WebKit::LocalStorageDatabaseTracker::databasePath const):
(WebKit::fileCreationTime): Deleted.
(WebKit::fileModificationTime): Deleted.
(WebKit::LocalStorageDatabaseTracker::trackerDatabasePath const): Deleted.
(WebKit::LocalStorageDatabaseTracker::openTrackerDatabase): Deleted.
(WebKit::LocalStorageDatabaseTracker::importOriginIdentifiers): Deleted.
(WebKit::LocalStorageDatabaseTracker::updateTrackerDatabaseFromLocalStorageDatabaseFiles): Deleted.
(WebKit::LocalStorageDatabaseTracker::addDatabaseWithOriginIdentifier): Deleted.
(WebKit::LocalStorageDatabaseTracker::removeDatabaseWithOriginIdentifier): Deleted.
(WebKit::LocalStorageDatabaseTracker::pathForDatabaseWithOriginIdentifier): Deleted.

  • UIProcess/WebStorage/LocalStorageDatabaseTracker.h:
  • UIProcess/WebStorage/StorageManager.h:
12:53 PM Changeset in webkit [232409] by youenn@apple.com
  • 3 edits in trunk/LayoutTests

http/tests/appcache/deferred-events.html is flaky due to console log messages
https://bugs.webkit.org/show_bug.cgi?id=185543

Reviewed by Chris Dumez.

Update the test to wait for the onerror callback.
At that time, all console logging should be done.

  • http/tests/appcache/deferred-events-expected.txt:
  • http/tests/appcache/deferred-events.html:
12:41 PM Changeset in webkit [232408] by Kocsen Chung
  • 8 edits in tags/Safari-606.1.19.1/Source/WebKit

Revert r232276. rdar://problem/40728289

12:41 PM Changeset in webkit [232407] by Kocsen Chung
  • 2 edits in tags/Safari-606.1.19.1/Source/WebKit

Revert r232186. rdar://problem/40708108

12:11 PM Changeset in webkit [232406] by Kocsen Chung
  • 7 edits in tags/Safari-606.1.19.1/Source

Versioning.

12:07 PM Changeset in webkit [232405] by Kocsen Chung
  • 1 copy in tags/Safari-606.1.19.1

New tag.

12:06 PM Changeset in webkit [232404] by Yusuke Suzuki
  • 8 edits
    1 add in trunk

[JSC] Add Symbol.prototype.description getter
https://bugs.webkit.org/show_bug.cgi?id=186053

Reviewed by Keith Miller.

JSTests:

  • stress/symbol-description.js: Added.

(shouldBe):
(shouldThrow):

Source/JavaScriptCore:

Symbol.prototype.description accessor is now stage 3[1].
This adds a getter to retrieve Description? value from Symbol.
Previously, Symbol#toString() returns Symbol(${description}) value.
So users need to extract description part if they want it.

[1]: https://tc39.github.io/proposal-Symbol-description/

  • runtime/Symbol.cpp:

(JSC::Symbol::description const):

  • runtime/Symbol.h:
  • runtime/SymbolPrototype.cpp:

(JSC::tryExtractSymbol):
(JSC::symbolProtoGetterDescription):
(JSC::symbolProtoFuncToString):
(JSC::symbolProtoFuncValueOf):

LayoutTests:

  • js/Object-getOwnPropertyNames-expected.txt:
  • js/script-tests/Object-getOwnPropertyNames.js:
12:02 PM Changeset in webkit [232403] by Kocsen Chung
  • 1 copy in tags/Safari-#606.1.19.1

New tag.

11:55 AM Changeset in webkit [232402] by dino@apple.com
  • 1 edit
    2 adds in trunk/Websites/webkit.org

Add a demo for passive touch listeners.

  • demos/passive-touches/index.html: Added.
11:47 AM Changeset in webkit [232401] by Yusuke Suzuki
  • 3 edits in trunk/Source/JavaScriptCore

[JSC] Correct values and members of JSBigInt appropriately
https://bugs.webkit.org/show_bug.cgi?id=186196

Reviewed by Darin Adler.

This patch cleans up a bit to select more appropriate values and members of JSBigInt.

  1. JSBigInt's structure should be StructureIsImmortal.
  2. JSBigInt::allocationSize should be annotated with inline.
  3. Remove JSBigInt::visitChildren since it is completely the same to JSCell::visitChildren.
  4. Remove JSBigInt::finishCreation since it is completely the same to JSCell::finishCreation.
  • runtime/JSBigInt.cpp:

(JSC::JSBigInt::allocationSize):
(JSC::JSBigInt::allocateFor):
(JSC::JSBigInt::compareToDouble):
(JSC::JSBigInt::visitChildren): Deleted.
(JSC::JSBigInt::finishCreation): Deleted.

  • runtime/JSBigInt.h:
11:39 AM Changeset in webkit [232400] by Yusuke Suzuki
  • 6 edits
    9 adds in trunk

[DFG] InById should be converted to MatchStructure
https://bugs.webkit.org/show_bug.cgi?id=185803

Reviewed by Keith Miller.

JSTests:

  • microbenchmarks/in-by-id-match.js: Added.

(test):

  • microbenchmarks/in-by-id-removed.js: Added.

(test):

  • stress/in-by-id-constant.js: Added.

(shouldBe):
(test1):

  • stress/in-by-id-match-invalid.js: Added.

(shouldBe):
(test1):

  • stress/in-by-id-match.js: Added.

(shouldBe):
(test1):

Source/JavaScriptCore:

MatchStructure is introduced for instanceof optimization. But this node
is also useful for InById node. This patch converts InById to MatchStructure
node with CheckStructures if possible by using InByIdStatus.

Added microbenchmarks show improvements.

baseline patched

in-by-id-removed 18.1196+-0.8108 16.1702+-0.9773 definitely 1.1206x faster
in-by-id-match 16.3912+-0.2608 15.2736+-0.8173 definitely 1.0732x faster

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Sources.txt:
  • bytecode/InByIdStatus.cpp: Added.

(JSC::InByIdStatus::appendVariant):
(JSC::InByIdStatus::computeFor):
(JSC::InByIdStatus::hasExitSite):
(JSC::InByIdStatus::computeForStubInfo):
(JSC::InByIdStatus::computeForStubInfoWithoutExitSiteFeedback):
(JSC::InByIdStatus::filter):
(JSC::InByIdStatus::dump const):

  • bytecode/InByIdStatus.h: Added.

(JSC::InByIdStatus::InByIdStatus):
(JSC::InByIdStatus::state const):
(JSC::InByIdStatus::isSet const):
(JSC::InByIdStatus::operator bool const):
(JSC::InByIdStatus::isSimple const):
(JSC::InByIdStatus::numVariants const):
(JSC::InByIdStatus::variants const):
(JSC::InByIdStatus::at const):
(JSC::InByIdStatus::operator[] const):
(JSC::InByIdStatus::takesSlowPath const):

  • bytecode/InByIdVariant.cpp: Added.

(JSC::InByIdVariant::InByIdVariant):
(JSC::InByIdVariant::attemptToMerge):
(JSC::InByIdVariant::dump const):
(JSC::InByIdVariant::dumpInContext const):

  • bytecode/InByIdVariant.h: Added.

(JSC::InByIdVariant::isSet const):
(JSC::InByIdVariant::operator bool const):
(JSC::InByIdVariant::structureSet const):
(JSC::InByIdVariant::structureSet):
(JSC::InByIdVariant::conditionSet const):
(JSC::InByIdVariant::offset const):
(JSC::InByIdVariant::isHit const):

  • bytecode/PolyProtoAccessChain.h:
  • dfg/DFGByteCodeParser.cpp:

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

11:11 AM Changeset in webkit [232399] by keith_miller@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

move should only emit the move if it's actually needed
https://bugs.webkit.org/show_bug.cgi?id=186123

Reviewed by Saam Barati.

This patch relpaces move with moveToDestinationIfNeeded. This
will prevent us from emiting moves to the same location. The old
move, has been renamed to emitMove and made private.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):
(JSC::BytecodeGenerator::emitMove):
(JSC::BytecodeGenerator::emitGetGlobalPrivate):
(JSC::BytecodeGenerator::emitGetAsyncIterator):
(JSC::BytecodeGenerator::move): Deleted.

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::move):
(JSC::BytecodeGenerator::moveToDestinationIfNeeded): Deleted.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ThisNode::emitBytecode):
(JSC::SuperNode::emitBytecode):
(JSC::NewTargetNode::emitBytecode):
(JSC::ResolveNode::emitBytecode):
(JSC::TaggedTemplateNode::emitBytecode):
(JSC::ArrayNode::emitBytecode):
(JSC::ObjectLiteralNode::emitBytecode):
(JSC::EvalFunctionCallNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_putByIdDirect):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_putByIdDirectPrivate):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_putByValDirect):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_toNumber):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_toString):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_toObject):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_idWithProfile):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_isJSArray):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_isProxyObject):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_isRegExpObject):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_isObject):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_isDerivedArray):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_isMap):
(JSC::BytecodeIntrinsicNode::emit_intrinsic_isSet):
(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):
(JSC::emitPostIncOrDec):
(JSC::PostfixNode::emitBracket):
(JSC::PostfixNode::emitDot):
(JSC::PrefixNode::emitResolve):
(JSC::PrefixNode::emitBracket):
(JSC::PrefixNode::emitDot):
(JSC::LogicalOpNode::emitBytecode):
(JSC::ReadModifyResolveNode::emitBytecode):
(JSC::AssignResolveNode::emitBytecode):
(JSC::AssignDotNode::emitBytecode):
(JSC::AssignBracketNode::emitBytecode):
(JSC::FunctionNode::emitBytecode):
(JSC::ClassExprNode::emitBytecode):
(JSC::DestructuringAssignmentNode::emitBytecode):
(JSC::ArrayPatternNode::emitDirectBinding):
(JSC::ObjectPatternNode::bindValue const):
(JSC::AssignmentElementNode::bindValue const):
(JSC::ObjectSpreadExpressionNode::emitBytecode):

9:36 AM Changeset in webkit [232398] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

export-w3c-test-changes cannot apply patches when some w3c-import.log files are changed
https://bugs.webkit.org/show_bug.cgi?id=186133

Patch by Frederic Wang <fwang@igalia.com> on 2018-06-01
Reviewed by Youenn Fablet.

  • Scripts/webkitpy/w3c/test_exporter.py: Exclude w3c-import.log from the diff.
  • Scripts/webkitpy/w3c/test_exporter_unittest.py: Add unit test.
9:25 AM WebKitGTK/2.20.x edited by Michael Catanzaro
(diff)
9:12 AM Changeset in webkit [232397] by Michael Catanzaro
  • 2 edits in trunk/Source/WebKit

[GTK] Crash in WebKitFaviconDatabase when pageURL is unset
https://bugs.webkit.org/show_bug.cgi?id=186164

Reviewed by Carlos Garcia Campos.

PageURL can legitimately be null here if JavaScript does something silly with window.open.

  • UIProcess/API/glib/WebKitFaviconDatabase.cpp:

(webkitFaviconDatabaseSetIconURLForPageURL):
(webkitFaviconDatabaseSetIconForPageURL):

9:08 AM Changeset in webkit [232396] by BJ Burg
  • 4 edits in trunk/Source/WebKit

[Cocoa] Web Automation: use the session delegate to perform window maximize
https://bugs.webkit.org/show_bug.cgi?id=186167
<rdar://problem/40544391>

Reviewed by Timothy Hatcher.

Add plumbing to hand off window maximizing to the session delegate.

  • UIProcess/API/Cocoa/_WKAutomationSessionDelegate.h:
  • UIProcess/Cocoa/AutomationSessionClient.h:
  • UIProcess/Cocoa/AutomationSessionClient.mm:

(WebKit::AutomationSessionClient::AutomationSessionClient):
(WebKit::AutomationSessionClient::requestMaximizeWindowOfPage):

9:00 AM Changeset in webkit [232395] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

Unskip fast/html/marquee-reparent-check.html on macOS debug.
https://bugs.webkit.org/show_bug.cgi?id=178465
<rdar://problem/35052953>

Reviewed by Geoffrey Garen.

Unskipping test since the debug assertion is no longer reproducible in
current sources on shipping software.

  • platform/mac/TestExpectations:
7:39 AM Changeset in webkit [232394] by Alan Bujtas
  • 7 edits in trunk/Source/WebCore

[LFC] Simplify the formatting class implementation by pushing down some of the logic to the Geometry class
https://bugs.webkit.org/show_bug.cgi?id=186179

Reviewed by Antti Koivisto.

  • layout/FormattingContext.cpp:

(WebCore::Layout::FormattingContext::computeOutOfFlowPosition const):
(WebCore::Layout::FormattingContext::computeOutOfFlowWidth const):
(WebCore::Layout::FormattingContext::computeFloatingWidth const):
(WebCore::Layout::FormattingContext::computeOutOfFlowHeight const):
(WebCore::Layout::FormattingContext::computeFloatingHeight const):

  • layout/FormattingContext.h:
  • layout/FormattingContextGeometry.cpp:

(WebCore::Layout::outOfFlowNonReplacedHeight):
(WebCore::Layout::outOfFlowNonReplacedWidth):
(WebCore::Layout::outOfFlowReplacedHeight):
(WebCore::Layout::outOfFlowReplacedWidth):
(WebCore::Layout::floatingNonReplacedHeight):
(WebCore::Layout::floatingNonReplacedWidth):
(WebCore::Layout::floatingReplacedHeight):
(WebCore::Layout::floatingReplacedWidth):
(WebCore::Layout::outOfFlowNonReplacedPosition):
(WebCore::Layout::outOfFlowReplacedPosition):
(WebCore::Layout::FormattingContext::Geometry::outOfFlowHeight):
(WebCore::Layout::FormattingContext::Geometry::outOfFlowWidth):
(WebCore::Layout::FormattingContext::Geometry::floatingHeight):
(WebCore::Layout::FormattingContext::Geometry::floatingWidth):
(WebCore::Layout::FormattingContext::Geometry::outOfFlowPosition):
(WebCore::Layout::FormattingContext::Geometry::inlineReplacedHeight):
(WebCore::Layout::FormattingContext::Geometry::inlineReplacedWidth):
(WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedHeight): Deleted.
(WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedWidth): Deleted.
(WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedHeight): Deleted.
(WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedWidth): Deleted.
(WebCore::Layout::FormattingContext::Geometry::floatingNonReplacedHeight): Deleted.
(WebCore::Layout::FormattingContext::Geometry::floatingNonReplacedWidth): Deleted.
(WebCore::Layout::FormattingContext::Geometry::floatingReplacedHeight): Deleted.
(WebCore::Layout::FormattingContext::Geometry::floatingReplacedWidth): Deleted.
(WebCore::Layout::FormattingContext::Geometry::outOfFlowNonReplacedPosition): Deleted.
(WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedPosition): Deleted.
(WebCore::Layout::FormattingContext::Geometry::replacedHeight): Deleted.
(WebCore::Layout::FormattingContext::Geometry::replacedWidth): Deleted.

  • layout/blockformatting/BlockFormattingContext.cpp:

(WebCore::Layout::BlockFormattingContext::computeStaticPosition const):
(WebCore::Layout::BlockFormattingContext::computeInFlowPositionedPosition const):
(WebCore::Layout::BlockFormattingContext::computeInFlowHeight const):
(WebCore::Layout::BlockFormattingContext::computeInFlowWidth const):

  • layout/blockformatting/BlockFormattingContext.h:
  • layout/blockformatting/BlockFormattingContextGeometry.cpp:

(WebCore::Layout::inFlowNonReplacedHeight):
(WebCore::Layout::inFlowNonReplacedWidth):
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowHeight):
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowWidth):
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeight): Deleted.
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedWidth): Deleted.

7:07 AM Changeset in webkit [232393] by Alan Bujtas
  • 8 edits in trunk/Source/WebCore

[LFC] Push FormattingContext::computeWidth/computeHeight logic from the base to the subclasses.
https://bugs.webkit.org/show_bug.cgi?id=186172

Reviewed by Antti Koivisto.

FormattingContext::computeWidth/computeHeight virtual functions have very little benefit and in the long run
it's better if we keep the number of virtual functions to the minimum necessary.

  • layout/FormattingContext.cpp:

(WebCore::Layout::FormattingContext::computeFloatingWidth const):
(WebCore::Layout::FormattingContext::computeStaticPosition const): Deleted.
(WebCore::Layout::FormattingContext::computeInFlowPositionedPosition const): Deleted.
(WebCore::Layout::FormattingContext::computeWidth const): Deleted.
(WebCore::Layout::FormattingContext::computeHeight const): Deleted.
(WebCore::Layout::FormattingContext::computeMargin const): Deleted.

  • layout/FormattingContext.h:
  • layout/FormattingContextGeometry.cpp:

(WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedHeight):
(WebCore::Layout::FormattingContext::Geometry::outOfFlowReplacedWidth):
(WebCore::Layout::FormattingContext::Geometry::floatingReplacedHeight):
(WebCore::Layout::FormattingContext::Geometry::floatingReplacedWidth):
(WebCore::Layout::FormattingContext::Geometry::inlineReplacedHeight):
(WebCore::Layout::FormattingContext::Geometry::inlineReplacedWidth):
(WebCore::Layout::FormattingContext::Geometry::replacedHeight): Deleted.
(WebCore::Layout::FormattingContext::Geometry::replacedWidth): Deleted.

  • layout/blockformatting/BlockFormattingContext.cpp:

(WebCore::Layout::BlockFormattingContext::computeWidth const):
(WebCore::Layout::BlockFormattingContext::computeHeight const):
(WebCore::Layout::BlockFormattingContext::computeInFlowHeight const):
(WebCore::Layout::BlockFormattingContext::computeInFlowWidth const):

  • layout/blockformatting/BlockFormattingContext.h:
  • layout/inlineformatting/InlineFormattingContext.cpp:

(WebCore::Layout::InlineFormattingContext::computeStaticPosition const):
(WebCore::Layout::InlineFormattingContext::computeInFlowPositionedPosition const):
(WebCore::Layout::InlineFormattingContext::computeInFlowWidth const): Deleted.
(WebCore::Layout::InlineFormattingContext::computeInFlowHeight const): Deleted.

  • layout/inlineformatting/InlineFormattingContext.h:
6:02 AM Changeset in webkit [232392] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[GTK] Difficult to read combo box text in dark theme
https://bugs.webkit.org/show_bug.cgi?id=165072

Patch by Carlos Eduardo Ramalho <cadubentzen@gmail.com> on 2018-06-01
Reviewed by Carlos Garcia Campos.

Set listbox foreground color to theme color to fix hard-to-read
text color in combo box while using dark theme.

No new tests required. ManualTests/gtk/theme.html already covers it.
See the "Option Lists" section.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::adjustStyle):
Adjust style for ListboxPart as well.

  • rendering/RenderTheme.h: Add adjustListboxStyle()
  • rendering/RenderThemeGtk.cpp:

(WebCore::RenderThemeGtk::adjustListboxStyle const):
Set color to the theme foreground color.

  • rendering/RenderThemeGtk.h: adjustListboxStyle() overriden.
1:09 AM Changeset in webkit [232391] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit

Unreviewed. Try to fix GTK+ build with old versions of GTK+ after r232390.

  • UIProcess/gtk/WebPopupMenuProxyGtk.cpp:

(WebKit::WebPopupMenuProxyGtk::showPopupMenu):

12:44 AM Changeset in webkit [232390] by Carlos Garcia Campos
  • 7 edits in trunk/Source

[GTK] Switch to use a popup window with a tree view instead of a menu for option menu default implementation
https://bugs.webkit.org/show_bug.cgi?id=186146

Reviewed by Michael Catanzaro.

Source/WebCore:

Make it possible to use GUniquePtr with GtkTreePath.

  • platform/gtk/GUniquePtrGtk.h:

Source/WebKit:

It's more convenient to use than the menu.

  • UIProcess/API/gtk/WebKitPopupMenu.cpp:

(WebKit::menuCloseCallback):
(WebKit::WebKitPopupMenu::activateItem):

  • UIProcess/API/gtk/WebKitPopupMenu.h:
  • UIProcess/gtk/WebPopupMenuProxyGtk.cpp:

(WebKit::WebPopupMenuProxyGtk::WebPopupMenuProxyGtk):
(WebKit::WebPopupMenuProxyGtk::selectItem):
(WebKit::WebPopupMenuProxyGtk::activateItem):
(WebKit::WebPopupMenuProxyGtk::activateItemAtPath):
(WebKit::WebPopupMenuProxyGtk::treeViewRowActivatedCallback):
(WebKit::WebPopupMenuProxyGtk::treeViewButtonReleaseEventCallback):
(WebKit::WebPopupMenuProxyGtk::buttonPressEventCallback):
(WebKit::WebPopupMenuProxyGtk::keyPressEventCallback):
(WebKit::WebPopupMenuProxyGtk::createPopupMenu):
(WebKit::WebPopupMenuProxyGtk::show):
(WebKit::WebPopupMenuProxyGtk::showPopupMenu):
(WebKit::WebPopupMenuProxyGtk::hidePopupMenu):
(WebKit::WebPopupMenuProxyGtk::cancelTracking):
(WebKit::WebPopupMenuProxyGtk::typeAheadFindIndex):
(WebKit::WebPopupMenuProxyGtk::typeAheadFind):

  • UIProcess/gtk/WebPopupMenuProxyGtk.h:

May 31, 2018:

11:06 PM Changeset in webkit [232389] by fred.wang@free.fr
  • 4 edits in trunk/Tools

export-w3c-test-changes should use the new location & name of the WPT repo
https://bugs.webkit.org/show_bug.cgi?id=186135

Patch by Frederic Wang <fwang@igalia.com> on 2018-05-31
Reviewed by Youenn Fablet.

Web platform tests have been moved to GitHub's web-platform-tests/wpt. This patch updates the
corresponding variables to use the new organization and repository name. It also refactors a
bit the code to reduce the amount of hardcoded strings.

  • Scripts/webkitpy/w3c/common.py: Use org web-platform-tests, repo name wpt. Also removes the

final slash to WPT_GH_URL, so it can be used for repo URL too.

  • Scripts/webkitpy/w3c/test_exporter.py: Import more symbols and define WPT_PR_URL from

WPT_GH_URL.
(WebPlatformTestExporter._wpt_fork_branch_github_url): Use WPT_GH_REPO_NAME.
(WebPlatformTestExporter._wpt_fork_push_url): Use WPT_GH_REPO_NAME.
(WebPlatformTestExporter._git): Use WPT_GH_URL.
(WebPlatformTestExporter._ensure_username_and_token): Use WPT_GH_ORG, WPT_GH_REPO_NAME.
(WebPlatformTestExporter.make_pull_request): Use WPT_GH_ORG, WPT_GH_REPO_NAME.
(parse_args): Use WPT_GH_REPO_NAME, WPT_GH_URL.

  • Scripts/webkitpy/w3c/test_exporter_unittest.py:

(TestExporterTest.test_export): Update organization and repository names for the remote
branch and pull request.
(TestExporterTest.test_export_with_specific_branch): Update repository name.

9:46 PM Changeset in webkit [232388] by pvollan@apple.com
  • 2 edits in trunk/LayoutTests

Skip http/tests/security/referrer-policy-header.html on Windows.
https://bugs.webkit.org/show_bug.cgi?id=186183

Unreviewed test gardening.

  • platform/win/TestExpectations:
9:45 PM Changeset in webkit [232387] by Yusuke Suzuki
  • 3 edits in trunk/Source/JavaScriptCore

[Baseline] Store constant directly in emit_op_mov
https://bugs.webkit.org/show_bug.cgi?id=186182

Reviewed by Saam Barati.

In the old code, we first move a constant to a register and store it to the specified address.
But in 64bit JSC, we can directly store a constant to the specified address. This reduces the
generated code size. Since the old code was emitting a constant in a code anyway, this change
never increases the size of the generated code.

  • jit/JITInlines.h:

(JSC::JIT::emitGetVirtualRegister):
We remove this obsolete comment. Our OSR relies on the fact that values are stored and loaded
from the stack. If we transfer values in registers without loading values from the stack, it
breaks this assumption.

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_mov):

8:30 PM Changeset in webkit [232386] by Caio Lima
  • 5 edits
    8 adds in trunk

[ESNext][BigInt] Implement support for "=<" and ">=" relational operation
https://bugs.webkit.org/show_bug.cgi?id=185929

Reviewed by Yusuke Suzuki.

JSTests:

  • bigIntTests.yaml:
  • stress/big-int-greater-than-or-equal-jit.js: Added.
  • stress/big-int-greater-than-or-equal-order-of-evaluation.js: Added.
  • stress/big-int-greater-than-or-equal-wrapped-values.js: Added.
  • stress/big-int-greater-than-or-equal.js: Added.
  • stress/big-int-less-than-or-equal-general.js: Added.
  • stress/big-int-less-than-or-equal-jit.js: Added.
  • stress/big-int-less-than-or-equal-order-of-evaluation.js: Added.
  • stress/big-int-less-than-or-equal-wrapped-values.js: Added.

Source/JavaScriptCore:

This patch is introducing support to BigInt operands into ">=" and
"<=" operators.
Here we introduce bigIntCompareResult that is a helper function
to reuse code between "less than" and "less than or equal" operators.

  • runtime/JSBigInt.h:
  • runtime/Operations.h:

(JSC::bigIntCompareResult):
(JSC::bigIntCompare):
(JSC::jsLess):
(JSC::jsLessEq):
(JSC::bigIntCompareLess): Deleted.

8:07 PM Changeset in webkit [232385] by sbarati@apple.com
  • 5 edits
    1 add in trunk

Cache toString results for CoW arrays
https://bugs.webkit.org/show_bug.cgi?id=186160

Reviewed by Keith Miller.

JSTests:

  • microbenchmarks/to-string-on-cow-array.js: Added.

(foo):

Source/JavaScriptCore:

This patch makes it so that we cache the result of toString on
arrays with a CoW butterfly. This cache lives on Heap and is
cleared after every GC. We only cache the toString result when
the CoW butterfly doesn't have a hole (currently, all CoW arrays
have a hole, but this isn't an invariant we want to rely on). The
reason for this is that if there is a hole, the value may be loaded
from the prototype, and the cache may produce a stale result.

This is a ~4% speedup on the ML subtest in ARES. And is a ~1% overall
progression on ARES.

  • heap/Heap.cpp:

(JSC::Heap::finalize):
(JSC::Heap::addCoreConstraints):

  • heap/Heap.h:
  • runtime/ArrayPrototype.cpp:

(JSC::canUseFastJoin):
(JSC::holesMustForwardToPrototype):
(JSC::isHole):
(JSC::containsHole):
(JSC::fastJoin):
(JSC::arrayProtoFuncToString):

8:06 PM Changeset in webkit [232384] by sbarati@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

PutStructure AI rule needs to call didFoldClobberStructures when the incoming value's structure set is clear
https://bugs.webkit.org/show_bug.cgi?id=186169

Reviewed by Mark Lam.

If we don't do this, the CFA validation rule about StructureID being
clobbered but AI not clobbering or folding a clobber will cause us
to crash. Simon was running into this yesterday on arstechnica.com.
I couldn't come up with a test case for this, but it's obvious
what the issue is by looking at the IR dump at the time of the crash.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

5:43 PM Changeset in webkit [232383] by sbarati@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

JSImmutableButterfly should align its variable storage
https://bugs.webkit.org/show_bug.cgi?id=186159

Reviewed by Mark Lam.

I'm also making the use of reinterpret_cast and bitwise_cast consistent
inside of JSImmutableButterfly. I switched everything to use bitwise_cast.

  • runtime/JSImmutableButterfly.h:

(JSC::JSImmutableButterfly::toButterfly const):
(JSC::JSImmutableButterfly::fromButterfly):
(JSC::JSImmutableButterfly::offsetOfData):
(JSC::JSImmutableButterfly::allocationSize):

5:19 PM Changeset in webkit [232382] by Kocsen Chung
  • 10 edits
    2 adds in branches/safari-605-branch

Cherry-pick r232313. rdar://problem/40050814

LLInt get_by_id prototype caching doesn't properly handle changes
https://bugs.webkit.org/show_bug.cgi?id=186112

Reviewed by Filip Pizlo.

JSTests:

  • stress/llint-proto-get-by-id-cache-change-prototype.js: Added. (foo):
  • stress/llint-proto-get-by-id-cache-intercept-value.js: Added. (foo):

Source/JavaScriptCore:

The caching would sometimes fail to track that a prototype had changed
and wouldn't update its set of watchpoints.

  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::finalizeLLIntInlineCaches):
  • bytecode/CodeBlock.h:
  • bytecode/LLIntPrototypeLoadAdaptiveStructureWatchpoint.h: (JSC::LLIntPrototypeLoadAdaptiveStructureWatchpoint::key const):
  • bytecode/ObjectPropertyConditionSet.h: (JSC::ObjectPropertyConditionSet::size const):
  • bytecode/Watchpoint.h: (JSC::Watchpoint::Watchpoint): Deleted.
  • llint/LLIntSlowPaths.cpp: (JSC::LLInt::setupGetByIdPrototypeCache):

Source/WTF:

Mark some methods const.

  • wtf/Bag.h: (WTF::Bag::begin const): (WTF::Bag::end const): (WTF::Bag::unwrappedHead const): (WTF::Bag::end): Deleted. (WTF::Bag::unwrappedHead): Deleted.

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

5:19 PM Changeset in webkit [232381] by Kocsen Chung
  • 17 edits in branches/safari-605-branch/Source/JavaScriptCore

Revert r231595. rdar://problem/40050814

5:19 PM Changeset in webkit [232380] by Kocsen Chung
  • 2 edits in branches/safari-605-branch/Source/JavaScriptCore

Revert r231540. rdar://problem/40050814

5:19 PM Changeset in webkit [232379] by Kocsen Chung
  • 2 edits in branches/safari-605-branch/Source/WebCore

Cherry-pick r232315. rdar://problem/40641066

Revert changes made to URLWithUserTypedString made in https://trac.webkit.org/changeset/232281
https://bugs.webkit.org/show_bug.cgi?id=186108
<rdar://problem/40663065>

Reviewed by Alex Christensen.

Covered by existing API tests.

  • platform/mac/WebCoreNSURLExtras.mm: (WebCore::URLWithUserTypedString): Return early if WebCore::URL is not able to create a CFURL. Use CFURL otherwise to keep the existing behavior as much as possible.

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

5:19 PM Changeset in webkit [232378] by Kocsen Chung
  • 13 edits in branches/safari-605-branch

Cherry-pick r232281. rdar://problem/40641066

Add a consistency check between URL and CFURL
Source/WebCore:

https://bugs.webkit.org/show_bug.cgi?id=186057
<rdar://problem/40258457>

Reviewed by Geoff Garen.

It is important that WebCore::URL used in WebCore and CFURL that gets serialized in the network pipe remain consistent.
Otherwise, we will end-up with odd bugs.

We add such a check when creating a CFURL from an URL.
To make things more consistent, we also rely now more on WebCore::URL instead of directly creating a CFURL.

  • platform/URL.h:
  • platform/cf/CFURLExtras.cpp: (WebCore::isCFURLSameOrigin):
  • platform/cf/CFURLExtras.h:
  • platform/cf/URLCF.cpp: (WebCore::URL::createCFURL const):
  • platform/mac/URLMac.mm: (WebCore::URL::createCFURL const):
  • platform/mac/WebCoreNSURLExtras.mm: (WebCore::URLWithUserTypedString):

Source/WebKit:

https://bugs.webkit.org/show_bug.cgi?id=186057
<rdar://problem/40258457>

Reviewed by Geoff Garen.

  • Shared/Cocoa/WKNSURLExtras.mm: (+[NSURL _web_URLWithWTFString:relativeToURL:]): (urlWithWTFString): Deleted. (+[NSURL _web_URLWithWTFString:]): Deleted.

Tools:

https://bugs.webkit.org/show_bug.cgi?id=182444
<rdar://problem/37164835>

Reviewed by Geoff Garen.

DRT code expected a non null URL which is no longer the case now.
Updated DRT to remove that assumption.

  • DumpRenderTree/TestRunner.cpp: (TestRunner::redirectionDestinationForURL):
  • DumpRenderTree/TestRunner.h:
  • DumpRenderTree/mac/ResourceLoadDelegate.mm: (-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):

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

5:19 PM Changeset in webkit [232377] by Kocsen Chung
  • 5 edits
    1 add in branches/safari-605-branch

Cherry-pick r232219. rdar://problem/40641075

for-in loops should preserve and restore the TDZ stack for each of its internal loops.
https://bugs.webkit.org/show_bug.cgi?id=185995
<rdar://problem/40173142>

Reviewed by Saam Barati.

JSTests:

  • stress/regress-185995.js: Added.

Source/JavaScriptCore:

This is because there's no guarantee that any of the loop bodies will be
executed. Hence, there's no guarantee that the TDZ variables will have been
initialized after each loop body.

  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::preserveTDZStack): (JSC::BytecodeGenerator::restoreTDZStack):
  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp: (JSC::ForInNode::emitBytecode):

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

4:50 PM Changeset in webkit [232376] by keith_miller@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

DFGArrayModes needs to know more about CoW arrays
https://bugs.webkit.org/show_bug.cgi?id=186162

Reviewed by Filip Pizlo.

This patch fixes two issues in DFGArrayMode.

1) fromObserved was missing switch cases for when the only observed ArrayModes are CopyOnWrite.
2) DFGArrayModes needs to track if the ArrayClass is an OriginalCopyOnWriteArray in order
to vend an accurate original structure.

Additionally, this patch fixes some places in Bytecode parsing where we told the array mode
we were doing a read but actually doing a write. Also, DFGArrayMode will now print the
action it is expecting when being dumped.

  • bytecode/ArrayProfile.h:

(JSC::hasSeenWritableArray):

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::fromObserved):
(JSC::DFG::ArrayMode::refine const):
(JSC::DFG::ArrayMode::originalArrayStructure const):
(JSC::DFG::arrayActionToString):
(JSC::DFG::arrayClassToString):
(JSC::DFG::ArrayMode::dump const):
(WTF::printInternal):

  • dfg/DFGArrayMode.h:

(JSC::DFG::ArrayMode::withProfile const):
(JSC::DFG::ArrayMode::isJSArray const):
(JSC::DFG::ArrayMode::isJSArrayWithOriginalStructure const):
(JSC::DFG::ArrayMode::arrayModesWithIndexingShape const):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::isArrayTypeForArrayify):

4:43 PM Changeset in webkit [232375] by pvollan@apple.com
  • 8 edits in trunk/Source

Add OpenGL display mask to WebPage creation parameters.
https://bugs.webkit.org/show_bug.cgi?id=186163
<rdar://problem/40634504>

Reviewed by Brent Fulgham.

To make sure the OpenGL display mask is always available, include it in the WebPage creation parameters.
The OpenGL display mask is sent to the WebProcess when the platform display ID changes, but that is not
early enough in all cases. If the OpenGL display mask is not set, only OpenGL software rendering is offered
on some hardware configurations.
Source/WebCore:


No new tests, since it is not trivial to test whether OpenGL rendering is hardware accelerated.

  • platform/PlatformScreen.h:
  • platform/mac/PlatformScreenMac.mm:

(WebCore::displayID):

Source/WebKit:

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode const):
(WebKit::WebPageCreationParameters::decode):

  • Shared/WebPageCreationParameters.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::creationParameters):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::m_credentialsMessenger):

3:02 PM Changeset in webkit [232374] by Kocsen Chung
  • 7 edits in trunk/Source

Versioning.

2:23 PM Changeset in webkit [232373] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

Add a rule to allow reading files with prefix /private/var/db/CVMS/cvmsCodeSignObj
https://bugs.webkit.org/show_bug.cgi?id=186157
<rdar://problem/40666437>

Reviewed by Eric Carlson.

  • WebProcess/com.apple.WebProcess.sb.in:
2:03 PM Changeset in webkit [232372] by Megan Gardner
  • 8 edits in trunk/Source

Add setting to allow override screen size to be disabled.
https://bugs.webkit.org/show_bug.cgi?id=186109

Reviewed by Andy Estes.

Source/WebCore:

Not Testable, and for debug only.

Pipe settings and use them to ignore override screen size if setting is set.

  • page/DeprecatedGlobalSettings.cpp:
  • page/DeprecatedGlobalSettings.h:

(WebCore::DeprecatedGlobalSettings::setDisableScreenSizeOverride):
(WebCore::DeprecatedGlobalSettings::disableScreenSizeOverride):

  • page/Settings.yaml:
  • platform/ios/PlatformScreenIOS.mm:

Source/WebKit:

Pipe the needed settings through to WebCore.

  • Shared/WebPreferences.yaml:
  • UIProcess/WebPageProxy.cpp:

(WebKit::m_configurationPreferenceValues):

1:58 PM Changeset in webkit [232371] by Manuel Rego Casasnovas
  • 5 edits
    70 adds
    490 deletes in trunk/LayoutTests

[css-text] Update test suite
https://bugs.webkit.org/show_bug.cgi?id=186145

Reviewed by Youenn Fablet.

These tests used to have problems in Mac and iOS platforms,
but they were reworked in WPT upstream:
https://github.com/web-platform-tests/wpt/pull/10860

Importing the new version of the tests in this patch.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-001-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-001.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-002-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-002.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-003-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-003.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-004-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-004.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-005-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-005.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-006-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-006.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-007-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-007.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-008-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-008.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-009-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-009.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-010-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-010.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-011-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-011.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-012-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-012.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-013-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-013.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-014-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-014.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-015-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-015.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-016-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-016.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-017-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-017.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-018-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-018.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-019-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-019.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-020-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-020.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-021-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-021.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-022-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-022.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-023-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-023.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-024-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-024.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-025-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-025.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-026-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-026.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-027-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-027.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-028-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-028.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-029-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-029.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-030-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-030.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-031-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-031.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-032-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-032.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-033-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-033.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-034-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-034.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-035-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-035.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-036-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-036.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-037-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-037.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-038-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-038.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-039-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-039.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-040-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-040.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-041-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-041.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-042-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-042.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-043-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-043.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-044-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-044.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-045-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-045.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-046-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-046.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-047-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-047.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-048-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-048.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-049-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-049.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-050-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-050.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-051-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-051.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-052-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-052.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-054-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-054.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-055-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-055.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-056-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-056.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-057-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-057.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-058-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-058.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-059-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-059.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-060-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-060.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-101-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-101.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-102-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-102.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-103-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-103.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-104-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-104.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-105-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-105.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-106-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-106.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-107-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-107.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-108-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-108.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-109-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-109.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-110-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-110.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-111-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-111.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-112-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-112.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-113-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-113.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-114-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-114.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-115-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-115.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-116-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-116.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-117-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-117.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-118-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-118.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-119-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-119.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-120-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-120.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-121-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-121.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-122-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-122.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-123-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-123.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-124-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-124.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-125-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-125.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-126-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-126.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-127-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-127.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-128-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-128.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-129-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-129.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-130-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-130.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-131-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-131.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-132-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-132.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-133-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-133.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-134-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-134.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-135-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-135.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-138-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-138.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-139-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-139.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-140-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-140.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-141-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-141.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-144-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-144.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-145-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-145.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-146-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-146.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-147-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-147.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-148-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-148.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-149-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-149.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-152-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-152.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-154-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-154.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-155-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-155.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-156-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-156.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-157-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-157.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-158-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-158.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-159-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-159.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-160-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-160.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-201-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-201.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-202-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-202.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-203-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-203.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-204-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-204.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-205-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-205.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-206-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-206.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-207-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-207.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-208-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-208.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-209-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-209.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-210-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-210.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-211-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-211.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-212-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-212.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-213-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-213.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-214-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-214.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-215-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-215.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-216-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-216.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-217-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-217.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-218-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-218.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-219-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-219.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-220-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-220.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-221-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-221.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-222-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-222.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-223-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-223.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-224-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-224.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-225-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-225.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-226-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-226.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-227-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-227.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-228-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-228.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-229-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-229.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-230-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-230.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-231-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-231.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-232-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-232.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-233-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-233.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-234-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-234.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-235-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-235.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-236-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-236.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-237-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-237.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-238-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-238.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-239-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-239.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-240-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-240.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-241-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-241.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-242-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-242.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-243-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-243.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-244-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-244.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-245-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-245.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-246-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-246.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-247-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-247.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-248-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-248.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-249-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-249.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-250-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-250.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-251-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-251.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-252-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-252.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-254-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-254.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-255-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-255.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-256-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-256.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-257-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-257.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-258-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-258.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-259-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-259.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-260-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-260.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-301-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-301.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-302-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-302.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-303-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-303.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-304-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-304.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-305-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-305.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-306-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-306.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-307-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-307.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-308-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-308.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-309-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-309.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-310-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-310.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-311-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-311.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-312-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-312.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-313-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-313.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-314-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-314.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-315-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-315.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-316-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-316.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-317-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-317.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-318-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-318.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-319-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-319.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-320-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-320.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-321-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-321.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-322-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-322.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-323-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-323.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-324-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-324.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-325-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-325.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-326-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-326.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-327-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-327.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-351-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-351.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-352-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-352.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-353-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-353.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-354-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-354.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-355-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-355.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-358-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-358.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-359-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-359.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-362-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-362.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-363-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-363.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-364-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-364.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-365-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-365.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-366-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-366.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-367-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-367.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-370-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-370.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-372-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-372.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-373-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-373.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-374-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-374.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-375-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-375.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-376-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-376.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-377-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-377.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-401-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-401.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-402-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-402.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-403-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-403.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-404-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-404.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-405-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-405.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-406-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-406.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-407-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-407.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-408-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-408.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-409-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-409.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-410-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-410.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-411-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-411.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-412-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-412.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-413-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-413.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-414-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-414.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-415-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-415.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-416-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-416.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-417-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-417.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-418-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-418.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-419-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-419.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-420-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-420.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-421-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-421.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-422-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-422.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-423-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-423.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-424-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-424.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-425-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-425.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-426-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-426.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-427-expected.html: Removed.
  • web-platform-tests/css/css-text/i18n/css3-text-line-break-jazh-427.html: Removed.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cj-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-cpm-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-hyphens-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-in-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-iteration-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/ja/css-text-line-break-ja-po-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/ja/w3c-import.log: Added.
  • web-platform-tests/css/css-text/i18n/w3c-import.log:
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-cpm-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-hyphens-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-in-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-iteration-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-loose-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-loose.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-normal-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-normal.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-strict-expected.txt: Added.
  • web-platform-tests/css/css-text/i18n/zh/css-text-line-break-zh-po-strict.html: Added.
  • web-platform-tests/css/css-text/i18n/zh/w3c-import.log: Added.

LayoutTests:

  • platform/ios/TestExpectations:
  • platform/mac/TestExpectations:
1:54 PM Changeset in webkit [232370] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

REGRESSION(r216119): DocumentLoader::detachFromFrame still encounters nullptr frame
https://bugs.webkit.org/show_bug.cgi?id=186081
<rdar://problem/34918109>

Reviewed by David Kilzer.

The nullptr check that was removed in r216119 was still needed because when the DocumentLoader
is in 'm_waitingForNavigationPolicy' or in 'm_waitingForContentPolicy', a call to the policy checker
to stopCheck we will clear the frame as part of the cleanup phase.

If m_frame is nullptr after cancelPolicyCheckIfNeeded, our work is already done so just return.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::detachFromFrame):

1:49 PM Changeset in webkit [232369] by bshafiei@apple.com
  • 7 edits in tags/Safari-606.1.18.1/Source

Versioning.

1:44 PM Changeset in webkit [232368] by bshafiei@apple.com
  • 1 copy in tags/Safari-606.1.18.1

Tag Safari-606.1.18.1.

1:37 PM Changeset in webkit [232367] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Don't paint the System Preview badge if the image isn't fully decoded
https://bugs.webkit.org/show_bug.cgi?id=186158
<rdar://problem/40454866>

Reviewed by Antoine Quint.

Only paint the system preview badge if the image itself said
that it succeeded in drawing.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::paintIntoRect): Check the ImageDrawResult.

1:19 PM Changeset in webkit [232366] by Kocsen Chung
  • 2 edits in tags/Safari-606.1.19/Source/WebKit

Cherry-pick r232299. rdar://problem/40691662

Fix a few issues in WKFullScreenViewController
https://bugs.webkit.org/show_bug.cgi?id=186067
<rdar://problem/40630944>

Reviewed by Darin Adler.

The check in setInterface() is checking the wrong pointer:

  • UIProcess/ios/fullscreen/WKFullScreenViewController.mm: (WKFullScreenViewControllerPlaybackSessionModelClient::setInterface):

The check in -_effectiveFullscreenInsetTop is backwards:
(-[WKFullScreenViewController _effectiveFullscreenInsetTop]):

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

12:51 PM Changeset in webkit [232365] by ddkilzer@apple.com
  • 2 edits
    1 add in trunk/Source/ThirdParty/libwebrtc

Fix leak of AudioDeviceID array due to an early return in AudioDeviceMac::GetNumberDevices()
<https://webkit.org/b/186152>
<rdar://problem/40692824>

Reviewed by Alex Christensen.

  • Source/webrtc/modules/audio_device/mac/audio_device_mac.cc:

Use std::make_unique<> so that memory is allocated and
deallocated automatically. Remove manual calls to free().

  • WebKit/0011-Fix-AudioDeviceID-array-leak.patch: Add.
12:46 PM Changeset in webkit [232364] by Brent Fulgham
  • 4 edits
    1 copy in trunk/Source/WebKit

[macOS] Add JIT entitlements to WebContent process and plugin process on macOS
https://bugs.webkit.org/show_bug.cgi?id=184485
<rdar://problem/37556535>

Reviewed by Dan Bernstein.

This patch builds on the changes from Bug 185526 to add support for a JIT entitlement. It makes the
following changes:

  1. Adds a new 'WebContent-OSX.entitlements file that unconditionally adds the JIT entitlement for all builds.
  2. Modifies the PluginService.entitlements to unconditionally add the JIT entitlement.
  • Configurations/PluginService.entitlements: Updated to add the JIT entitlement.
  • Configurations/WebContent-OSX.entitlements: Updated to add the JIT entitlement.
  • Configurations/WebContentService.xcconfig: Updated to use the new 'WebContent-OSX.entitlements' file.
  • WebKit.xcodeproj/project.pbxproj:
12:36 PM Changeset in webkit [232363] by Ryan Haddad
  • 2 edits in trunk/Tools

Update expected results for BuildStepsConstructorTest
https://bugs.webkit.org/show_bug.cgi?id=186119

Reviewed by Alex Christensen.

  • BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Add missing entries for 'WinCairo 64-bit' bots.
12:33 PM Changeset in webkit [232362] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Implement checked cast for DDResultRef once DDResultGetCFTypeID() is available
<https://webkit.org/b/184554>
<rdar://problem/36241894>

Reviewed by Brent Fulgham.

  • editing/cocoa/DataDetection.mm:

(WebCore::detectItemAtPositionWithRange): Implement checked cast
for DDResultRef.

12:15 PM Changeset in webkit [232361] by achristensen@apple.com
  • 2 edits in trunk/Source/WebCore

Fix Windows build after r232246.
https://bugs.webkit.org/show_bug.cgi?id=186024

  • rendering/svg/SVGTextLayoutEngineBaseline.cpp:

(WebCore::SVGTextLayoutEngineBaseline::calculateAlignmentBaselineShift const):

12:13 PM Changeset in webkit [232360] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

Don't attempt to extend sandbox when running tests with mock media devices
https://bugs.webkit.org/show_bug.cgi?id=186150
<rdar://problem/40690875>

Reviewed by Alexey Proskuryakov.

Avoid attempting to issue a sandbox extension to actual media devices when
running with Mock capture devices.

Also handle the 'denyNextRequest' test state outside of the USE(APPLE_INTERNAL_SDK)
guards, since it is needed for Open Source builds as well.

  • UIProcess/UserMediaProcessManager.cpp:

(WebKit::UserMediaProcessManager::willCreateMediaStream):

11:43 AM Changeset in webkit [232359] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Unreviewed, rolling out r232212.
https://bugs.webkit.org/show_bug.cgi?id=186153

broke build (Requested by alexchristensen on #webkit).

Reverted changeset:

"JavaScriptCore: Disable 32-bit JIT on Windows"
https://bugs.webkit.org/show_bug.cgi?id=185989
https://trac.webkit.org/changeset/232212

11:06 AM Changeset in webkit [232358] by Kocsen Chung
  • 2 edits in tags/Safari-606.1.19/Source/WebKit

Revert r231903. rdar://problem/40690985

11:04 AM Changeset in webkit [232357] by sihui_liu@apple.com
  • 2 edits in trunk/Tools

[iOS] TestWebKitAPI.WebKit.WKHTTPCookieStoreWithoutProcessPool fails because cookies use different files with/without processpool
https://bugs.webkit.org/show_bug.cgi?id=185831
<rdar://problem/40468716>

Reviewed by David Kilzer.

  • TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:

(-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(TEST):

10:55 AM Changeset in webkit [232356] by Antti Koivisto
  • 2 edits in trunk/Source/WebKit

WebKit memory management: Safari jetsams on some websites when zooming and scrolling
https://bugs.webkit.org/show_bug.cgi?id=186091
<rdar://problem/36315010>

Reviewed by Geoff Garen.

When zooming a page rapidly the visible rect and the page zoom level may get momentarily out of sync.
When this happens we may generate tiles for a much larger area than needed and run out of memory
building the next layer tree transaction. Running out of memory is more likely if the page has lots of
tiled layers in addition to the main content layer.

We already have code for dealing with the scale mismatch for zoom-out case (where this would cause
visibly missing tiles). This patch enables the same exact adjustment for zoom-in case (where the
symptom is creating too many tiles).

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::adjustExposedRectForNewScale):

Do some renames to make it clear that this can both expand and contract the visible rect.
Bail out if there is nothing to do.

(WebKit::WebPage::updateVisibleContentRects):

Call adjustExposedRectForNewScale directly and unconditionally.

(WebKit::adjustExposedRectForBoundedScale): Deleted.

10:42 AM Changeset in webkit [232355] by keith_miller@apple.com
  • 2 edits in trunk/JSTests

Rebaseline test for change in Error.stack behavior.

  • stress/error-stack-trace-limit.js:

(numberOfFrames):

10:38 AM Changeset in webkit [232354] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Fix memory leak under NetworkStateNotifier::updateStateWithoutNotifying()
https://bugs.webkit.org/show_bug.cgi?id=186149
<rdar://problem/40674537>

Reviewed by Geoffrey Garen.

  • platform/network/mac/NetworkStateNotifierMac.cpp:

(WebCore::NetworkStateNotifier::updateStateWithoutNotifying):

9:58 AM Changeset in webkit [232353] by Chris Dumez
  • 3 edits in trunk/LayoutTests

Update http/wpt/service-workers/header-filtering.https.html to use a valid Referrer-Policy
https://bugs.webkit.org/show_bug.cgi?id=186148

Reviewed by Youenn Fablet.

Update http/wpt/service-workers/header-filtering.https.html to use a valid Referrer-Policy to
avoid logging a console message.

  • http/wpt/service-workers/header-filtering.https-expected.txt:
  • http/wpt/service-workers/resources/response-full-of-headers.py:

(main):

9:52 AM Changeset in webkit [232352] by aestes@apple.com
  • 1 edit in trunk/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm

Fix the macOS High Sierra build.

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:
9:47 AM Changeset in webkit [232351] by Chris Dumez
  • 2 edits in trunk/Tools

[iOS] API test ScrollViewInsetTests.InnerHeightWithLargeTopContentInset is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=184893
<rdar://problem/39747271>

Reviewed by Wenson Hsieh.

Update test to wait until the view is the expected height instead of
calling waitForNextPresentationUpdate once and expect the view to
have the right height. This fixes the flakiness.

  • TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:

(TestWebKitAPI::waitUntilInnerHeightIs):
(TestWebKitAPI::TEST):

9:43 AM Changeset in webkit [232350] by Alan Bujtas
  • 12 edits in trunk/Source/WebCore

[LFC] Layout code needs to know the type of the Element associated with a Layout::Box
https://bugs.webkit.org/show_bug.cgi?id=186117

Reviewed by Antti Koivisto.

Since these attributes don't change during layout, we could just pass them in to Layout::Box instead
of keep querying the Element.

  • layout/layouttree/LayoutBlockContainer.cpp:

(WebCore::Layout::BlockContainer::BlockContainer):

  • layout/layouttree/LayoutBlockContainer.h:
  • layout/layouttree/LayoutBox.cpp:

(WebCore::Layout::Box::Box):
(WebCore::Layout::Box::isPaddingApplicable const):
(WebCore::Layout::Box::isDocumentBox const): Deleted.
(WebCore::Layout::Box::isBodyBox const): Deleted.

  • layout/layouttree/LayoutBox.h:

(WebCore::Layout::Box::isAnonymous const):
(WebCore::Layout::Box::isDocumentBox const):
(WebCore::Layout::Box::isBodyBox const):
(WebCore::Layout::Box::ElementAttributes::ElementAttributes):
(WebCore::Layout::Box::setPreviousSibling):
(WebCore::Layout::Box::setIsAnonymous): Deleted.

  • layout/layouttree/LayoutContainer.cpp:

(WebCore::Layout::Container::Container):

  • layout/layouttree/LayoutContainer.h:
  • layout/layouttree/LayoutInlineBox.cpp:

(WebCore::Layout::InlineBox::InlineBox):

  • layout/layouttree/LayoutInlineBox.h:
  • layout/layouttree/LayoutInlineContainer.cpp:

(WebCore::Layout::InlineContainer::InlineContainer):

  • layout/layouttree/LayoutInlineContainer.h:
  • layout/layouttree/LayoutTreeBuilder.cpp:

(WebCore::Layout::TreeBuilder::createLayoutTree):
(WebCore::Layout::TreeBuilder::createSubTree):

9:24 AM Changeset in webkit [232349] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Unreviewed iOS build fix after r232335.

  • html/BaseChooserOnlyDateAndTimeInputType.h:
  • html/BaseDateAndTimeInputType.h:
8:47 AM Changeset in webkit [232348] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed, apply review comments from Darin after r232310.

  • platform/ReferrerPolicy.cpp:

(WebCore::parseReferrerPolicy):

7:59 AM Changeset in webkit [232347] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

[LFC] Margin box is border box + margins.
https://bugs.webkit.org/show_bug.cgi?id=186124

Reviewed by Antti Koivisto.

  • layout/displaytree/DisplayBox.cpp:

(WebCore::Display::Box::marginBox const):

7:58 AM Changeset in webkit [232346] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC] Add quirks mode setter/getting to LayoutContext
https://bugs.webkit.org/show_bug.cgi?id=186122

Reviewed by Antti Koivisto.

  • layout/LayoutContext.h:

(WebCore::Layout::LayoutContext::setInQuirksMode):
(WebCore::Layout::LayoutContext::inQuirksMode const):

  • page/FrameViewLayoutContext.cpp:

(WebCore::layoutUsingFormattingContext):

6:58 AM WebKitGTK/2.20.x edited by Michael Catanzaro
(diff)
4:00 AM Changeset in webkit [232345] by commit-queue@webkit.org
  • 9 edits in trunk/LayoutTests

[wpe] update the TestExpectations for encrypted-media after some investigations
https://bugs.webkit.org/show_bug.cgi?id=185593

Patch by Yacine Bandou <yacine.bandou_ext@softathome.com> on 2018-05-31
Reviewed by Xabier Rodriguez-Calvar.

After the fix 185725 and some investigations, the WPE platform TestExpectations should be updated

  • platform/wpe/TestExpectations:
  • platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-destroy-persistent-license.https-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-retrieve-persistent-license.https-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-clear-encrypted.https-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey-sequential-readyState.https-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-multikey-sequential.https-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-playback-temporary-waitingforkey.https-expected.txt:
  • platform/wpe/imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-waiting-for-a-key.https-expected.txt:
3:31 AM WebKitGTK/Gardening/Calendar edited by magomez@igalia.com
(diff)
3:27 AM Changeset in webkit [232344] by magomez@igalia.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK+ gardening after r232336.

  • platform/gtk/TestExpectations:
3:20 AM Changeset in webkit [232343] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

test262-runner should run in verbose mode in automation
https://bugs.webkit.org/show_bug.cgi?id=186115

Patch by Leo Balter <Leo Balter> on 2018-05-31
Reviewed by Yusuke Suzuki.

This patch toggles the verbose mode in the build bot and reports every test file
in order to avoid the '1200 seconds without output' issue.

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

(RunTest262Tests):

  • Scripts/test262/Runner.pm:

(processResult):

12:10 AM Changeset in webkit [232342] by Kocsen Chung
  • 2 edits in tags/Safari-606.1.19/Source/WebCore

Cherry-pick r232320. rdar://problem/40662705

WebContent crashes with system preview content
https://bugs.webkit.org/show_bug.cgi?id=186118

Reviewed by Myles Maxfield.

We were receiving crash reports on iOS devices when getting
platformContext() from a GraphicsContext. This usually
occurred when the page was invisible. Debugging showed that
it was trying to draw with a disabled context.

  • rendering/RenderThemeIOS.mm: (WebCore::RenderThemeIOS::paintSystemPreviewBadge): Early return if the context has painting disabled.

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

12:10 AM Changeset in webkit [232341] by Kocsen Chung
  • 13 edits in tags/Safari-606.1.19/Source

Cherry-pick r232312. rdar://problem/39338957

[Cocoa] Add an SPI to suppress connection termination errors from CFNetwork when network interfaces change
https://bugs.webkit.org/show_bug.cgi?id=186107
<rdar://problem/39338957>

Reviewed by Brady Eidson.

Source/WebCore/PAL:

  • pal/spi/cf/CFNetworkSPI.h: Declared new SPI.

Source/WebKit:

Added an SPI which configures a process pool's networking process to set the
kCFStreamPropertyAutoErrorOnSystemChange to NO on its NSURLSessionConfigurations.
This instructs CFNetwork to not terminate active connections when the system's
network interfaces change.

  • NetworkProcess/NetworkProcess.h: (WebKit::NetworkProcess::suppressesConnectionTerminationOnSystemChange const):
  • NetworkProcess/NetworkProcessCreationParameters.cpp: (WebKit::NetworkProcessCreationParameters::encode const): (WebKit::NetworkProcessCreationParameters::decode):
  • NetworkProcess/NetworkProcessCreationParameters.h:
  • NetworkProcess/cocoa/NetworkProcessCocoa.mm: (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
  • NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
  • UIProcess/API/APIProcessPoolConfiguration.cpp: (API::ProcessPoolConfiguration::copy):
  • UIProcess/API/APIProcessPoolConfiguration.h:
  • UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
  • UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm: (-[_WKProcessPoolConfiguration suppressesConnectionTerminationOnSystemChange]): (-[_WKProcessPoolConfiguration setSuppressesConnectionTerminationOnSystemChange:]):
  • UIProcess/Cocoa/WebProcessPoolCocoa.mm: (WebKit::WebProcessPool::platformInitializeNetworkProcess):

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

May 30, 2018:

11:51 PM Changeset in webkit [232340] by Kocsen Chung
  • 3 edits in tags/Safari-606.1.19/Source/WebKit

Cherry-pick r232307. rdar://problem/40651225

Take a background process assertion in WebPageProxy::callAfterNextPresentationUpdate()
https://bugs.webkit.org/show_bug.cgi?id=186097
<rdar://problem/40651225>

Reviewed by Dan Bernstein.

Refactor fix landed in r232298 so that we rely on the existing Callback infrastructure
to take a background process assertion.

  • UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm: (WebKit::RemoteLayerTreeDrawingAreaProxy::dispatchAfterEnsuringDrawing):
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::callAfterNextPresentationUpdate):

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

11:51 PM Changeset in webkit [232339] by Kocsen Chung
  • 2 edits in tags/Safari-606.1.19/Source/WebKit

Cherry-pick r232298. rdar://problem/40651225

Take a background process assertion in WebPageProxy::callAfterNextPresentationUpdate()
https://bugs.webkit.org/show_bug.cgi?id=186097
<rdar://problem/40651225>

Reviewed by Tim Horton.

Take a background process assertion in WebPageProxy::callAfterNextPresentationUpdate(). Otherwise,
apps may get stuck on _doAfterNextPresentationUpdate because the WebProcess got suspended.

  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::callAfterNextPresentationUpdate):

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

11:41 PM Changeset in webkit [232338] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[GTK] Hardcoded text color in input fields
https://bugs.webkit.org/show_bug.cgi?id=126907

Patch by Carlos Eduardo Ramalho <cadubentzen@gmail.com> on 2018-05-30
Reviewed by Carlos Garcia Campos.

Set text color in input fields to foreground theme color.
Also, set "window.background" as base GtkStyleContext to mimic
GTK applications and fix some theme bugs.

No new tests required. ManualTests/gtk/theme.html already covers it.

  • platform/gtk/RenderThemeGadget.cpp:

(WebCore::baseStyleContext): Added.
(WebCore::RenderThemeGadget::RenderThemeGadget):
Use "window.background" GtkStyleContext instead of
null parent for RenderThemeGadgets.

  • rendering/RenderThemeGtk.cpp:

(WebCore::RenderThemeGtk::adjustButtonStyle const):
Set color as foreground theme color.
(WebCore::RenderThemeGtk::adjustTextFieldStyle const): Ditto.
(WebCore::RenderThemeGtk::adjustTextAreaStyle const): Ditto.
(WebCore::RenderThemeGtk::adjustSearchFieldStyle const): Ditto.

  • rendering/RenderThemeGtk.h: adjustTextAreaStyle() overriden.
11:19 PM Changeset in webkit [232337] by Yusuke Suzuki
  • 171 edits in trunk/Source

[JSC] Pass VM& parameter as much as possible
https://bugs.webkit.org/show_bug.cgi?id=186085

Reviewed by Saam Barati.

Source/JavaScriptCore:

JSCell::vm() is slow compared to ExecState::vm(). That's why we have bunch of functions in JSCell/JSObject that take VM& as a parameter.
For example, we have JSCell::structure() and JSCell::structure(VM&), the former retrieves VM& from the cell and invokes structure(VM&).
If we can get VM& from ExecState* or the other place, it reduces the inlined code size.
This patch attempts to pass VM& parameter to such functions as much as possible.

  • API/APICast.h:

(toJS):
(toJSForGC):

  • API/JSCallbackObjectFunctions.h:

(JSC::JSCallbackObject<Parent>::getOwnPropertySlotByIndex):
(JSC::JSCallbackObject<Parent>::deletePropertyByIndex):
(JSC::JSCallbackObject<Parent>::staticFunctionGetter):

  • API/JSObjectRef.cpp:

(JSObjectIsConstructor):

  • API/JSTypedArray.cpp:

(JSObjectGetTypedArrayBuffer):

  • API/JSValueRef.cpp:

(JSValueIsInstanceOfConstructor):

  • bindings/ScriptFunctionCall.cpp:

(Deprecated::ScriptFunctionCall::call):

  • bindings/ScriptValue.cpp:

(Inspector::jsToInspectorValue):

  • bytecode/AccessCase.cpp:

(JSC::AccessCase::generateImpl):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):

  • bytecode/ObjectAllocationProfileInlines.h:

(JSC::ObjectAllocationProfile::possibleDefaultPropertyCount):

  • bytecode/ObjectPropertyConditionSet.cpp:

(JSC::generateConditionsForInstanceOf):

  • bytecode/PropertyCondition.cpp:

(JSC::PropertyCondition::isWatchableWhenValid const):
(JSC::PropertyCondition::attemptToMakeEquivalenceWithoutBarrier const):

  • bytecode/StructureStubClearingWatchpoint.cpp:

(JSC::StructureStubClearingWatchpoint::fireInternal):

  • debugger/Debugger.cpp:

(JSC::Debugger::detach):

  • debugger/DebuggerScope.cpp:

(JSC::DebuggerScope::create):
(JSC::DebuggerScope::put):
(JSC::DebuggerScope::deleteProperty):
(JSC::DebuggerScope::getOwnPropertyNames):
(JSC::DebuggerScope::defineOwnProperty):

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

  • dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::mergeOSREntryValue):

  • dfg/DFGArgumentsEliminationPhase.cpp:
  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::refine const):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleIntrinsicCall):
(JSC::DFG::ByteCodeParser::handleTypedArrayConstructor):
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(JSC::DFG::ByteCodeParser::check):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):

  • dfg/DFGFixupPhase.cpp:

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

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::tryGetConstantProperty):

  • dfg/DFGOperations.cpp:
  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetByValOnString):

  • dfg/DFGStrengthReductionPhase.cpp:

(JSC::DFG::StrengthReductionPhase::handleNode):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileStringCharAt):

  • ftl/FTLOperations.cpp:

(JSC::FTL::operationPopulateObjectInOSR):

  • inspector/InjectedScriptManager.cpp:

(Inspector::InjectedScriptManager::createInjectedScript):

  • inspector/JSJavaScriptCallFrame.cpp:

(Inspector::JSJavaScriptCallFrame::caller const):
(Inspector::JSJavaScriptCallFrame::scopeChain const):

  • interpreter/CallFrame.cpp:

(JSC::CallFrame::wasmAwareLexicalGlobalObject):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::executeProgram):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::execute):
(JSC::Interpreter::executeModuleProgram):

  • jit/JITOperations.cpp:

(JSC::getByVal):

  • jit/Repatch.cpp:

(JSC::tryCacheInByID):

  • jsc.cpp:

(functionDollarAgentReceiveBroadcast):
(functionHasCustomProperties):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::setupGetByIdPrototypeCache):
(JSC::LLInt::getByVal):
(JSC::LLInt::handleHostCall):
(JSC::LLInt::llint_throw_stack_overflow_error):

  • runtime/AbstractModuleRecord.cpp:

(JSC::AbstractModuleRecord::finishCreation):

  • runtime/ArrayConstructor.cpp:

(JSC::constructArrayWithSizeQuirk):

  • runtime/ArrayPrototype.cpp:

(JSC::speciesWatchpointIsValid):
(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
(JSC::ArrayPrototype::tryInitializeSpeciesWatchpoint):

  • runtime/AsyncFunctionConstructor.cpp:

(JSC::callAsyncFunctionConstructor):
(JSC::constructAsyncFunctionConstructor):

  • runtime/AsyncGeneratorFunctionConstructor.cpp:

(JSC::callAsyncGeneratorFunctionConstructor):
(JSC::constructAsyncGeneratorFunctionConstructor):

  • runtime/BooleanConstructor.cpp:

(JSC::constructWithBooleanConstructor):

  • runtime/ClonedArguments.cpp:

(JSC::ClonedArguments::createEmpty):
(JSC::ClonedArguments::createWithInlineFrame):
(JSC::ClonedArguments::createWithMachineFrame):
(JSC::ClonedArguments::createByCopyingFrom):
(JSC::ClonedArguments::getOwnPropertySlot):
(JSC::ClonedArguments::materializeSpecials):

  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::tryCachePutToScopeGlobal):
(JSC::CommonSlowPaths::tryCacheGetFromScopeGlobal):
(JSC::CommonSlowPaths::canAccessArgumentIndexQuickly):

  • runtime/ConstructData.cpp:

(JSC::construct):

  • runtime/DateConstructor.cpp:

(JSC::constructWithDateConstructor):

  • runtime/DatePrototype.cpp:

(JSC::dateProtoFuncToJSON):

  • runtime/DirectArguments.cpp:

(JSC::DirectArguments::overrideThings):

  • runtime/Error.cpp:

(JSC::getStackTrace):

  • runtime/ErrorConstructor.cpp:

(JSC::Interpreter::constructWithErrorConstructor):
(JSC::Interpreter::callErrorConstructor):

  • runtime/FunctionConstructor.cpp:

(JSC::constructWithFunctionConstructor):
(JSC::callFunctionConstructor):

  • runtime/GeneratorFunctionConstructor.cpp:

(JSC::callGeneratorFunctionConstructor):
(JSC::constructGeneratorFunctionConstructor):

  • runtime/GenericArgumentsInlines.h:

(JSC::GenericArguments<Type>::getOwnPropertySlot):

  • runtime/InferredStructureWatchpoint.cpp:

(JSC::InferredStructureWatchpoint::fireInternal):

  • runtime/InferredType.cpp:

(JSC::InferredType::removeStructure):

  • runtime/InferredType.h:
  • runtime/InferredTypeInlines.h:

(JSC::InferredType::finalizeUnconditionally):

  • runtime/IntlCollator.cpp:

(JSC::IntlCollator::initializeCollator):

  • runtime/IntlCollatorConstructor.cpp:

(JSC::IntlCollatorConstructorFuncSupportedLocalesOf):

  • runtime/IntlCollatorPrototype.cpp:

(JSC::IntlCollatorPrototypeGetterCompare):

  • runtime/IntlDateTimeFormat.cpp:

(JSC::IntlDateTimeFormat::initializeDateTimeFormat):
(JSC::IntlDateTimeFormat::formatToParts):

  • runtime/IntlDateTimeFormatConstructor.cpp:

(JSC::IntlDateTimeFormatConstructorFuncSupportedLocalesOf):

  • runtime/IntlDateTimeFormatPrototype.cpp:

(JSC::IntlDateTimeFormatPrototypeGetterFormat):

  • runtime/IntlNumberFormat.cpp:

(JSC::IntlNumberFormat::initializeNumberFormat):
(JSC::IntlNumberFormat::formatToParts):

  • runtime/IntlNumberFormatConstructor.cpp:

(JSC::IntlNumberFormatConstructorFuncSupportedLocalesOf):

  • runtime/IntlNumberFormatPrototype.cpp:

(JSC::IntlNumberFormatPrototypeGetterFormat):

  • runtime/IntlObject.cpp:

(JSC::canonicalizeLocaleList):
(JSC::defaultLocale):
(JSC::lookupSupportedLocales):
(JSC::intlObjectFuncGetCanonicalLocales):

  • runtime/IntlPluralRules.cpp:

(JSC::IntlPluralRules::initializePluralRules):
(JSC::IntlPluralRules::resolvedOptions):

  • runtime/IntlPluralRulesConstructor.cpp:

(JSC::IntlPluralRulesConstructorFuncSupportedLocalesOf):

  • runtime/IteratorOperations.cpp:

(JSC::iteratorNext):
(JSC::iteratorClose):
(JSC::iteratorForIterable):

  • runtime/JSArray.cpp:

(JSC::JSArray::shiftCountWithArrayStorage):
(JSC::JSArray::unshiftCountWithArrayStorage):
(JSC::JSArray::isIteratorProtocolFastAndNonObservable):

  • runtime/JSArrayBufferConstructor.cpp:

(JSC::JSArrayBufferConstructor::finishCreation):
(JSC::constructArrayBuffer):

  • runtime/JSArrayBufferPrototype.cpp:

(JSC::arrayBufferProtoFuncSlice):

  • runtime/JSArrayBufferView.cpp:

(JSC::JSArrayBufferView::unsharedJSBuffer):
(JSC::JSArrayBufferView::possiblySharedJSBuffer):

  • runtime/JSAsyncFunction.cpp:

(JSC::JSAsyncFunction::createImpl):
(JSC::JSAsyncFunction::create):
(JSC::JSAsyncFunction::createWithInvalidatedReallocationWatchpoint):

  • runtime/JSAsyncGeneratorFunction.cpp:

(JSC::JSAsyncGeneratorFunction::createImpl):
(JSC::JSAsyncGeneratorFunction::create):
(JSC::JSAsyncGeneratorFunction::createWithInvalidatedReallocationWatchpoint):

  • runtime/JSBoundFunction.cpp:

(JSC::boundThisNoArgsFunctionCall):
(JSC::boundFunctionCall):
(JSC::boundThisNoArgsFunctionConstruct):
(JSC::boundFunctionConstruct):
(JSC::getBoundFunctionStructure):
(JSC::JSBoundFunction::create):
(JSC::JSBoundFunction::boundArgsCopy):

  • runtime/JSCJSValue.cpp:

(JSC::JSValue::putToPrimitive):

  • runtime/JSCellInlines.h:

(JSC::JSCell::setStructure):
(JSC::JSCell::methodTable const):
(JSC::JSCell::toBoolean const):

  • runtime/JSFunction.h:

(JSC::JSFunction::createImpl):

  • runtime/JSGeneratorFunction.cpp:

(JSC::JSGeneratorFunction::createImpl):
(JSC::JSGeneratorFunction::create):
(JSC::JSGeneratorFunction::createWithInvalidatedReallocationWatchpoint):

  • runtime/JSGenericTypedArrayViewConstructorInlines.h:

(JSC::constructGenericTypedArrayViewWithArguments):
(JSC::constructGenericTypedArrayView):

  • runtime/JSGenericTypedArrayViewInlines.h:

(JSC::JSGenericTypedArrayView<Adaptor>::getOwnPropertySlotByIndex):
(JSC::JSGenericTypedArrayView<Adaptor>::putByIndex):
(JSC::JSGenericTypedArrayView<Adaptor>::deletePropertyByIndex):
(JSC::JSGenericTypedArrayView<Adaptor>::slowDownAndWasteMemory):

  • runtime/JSGenericTypedArrayViewPrototypeFunctions.h:

(JSC::genericTypedArrayViewProtoFuncSlice):
(JSC::genericTypedArrayViewPrivateFuncSubarrayCreate):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::init):
(JSC::JSGlobalObject::exposeDollarVM):
(JSC::JSGlobalObject::finishCreation):

  • runtime/JSGlobalObject.h:
  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncEval):

  • runtime/JSInternalPromise.cpp:

(JSC::JSInternalPromise::then):

  • runtime/JSInternalPromiseConstructor.cpp:

(JSC::constructPromise):

  • runtime/JSJob.cpp:

(JSC::JSJobMicrotask::run):

  • runtime/JSLexicalEnvironment.cpp:

(JSC::JSLexicalEnvironment::getOwnPropertySlot):
(JSC::JSLexicalEnvironment::put):

  • runtime/JSMap.cpp:

(JSC::JSMap::isIteratorProtocolFastAndNonObservable):

  • runtime/JSMapIterator.cpp:

(JSC::JSMapIterator::createPair):

  • runtime/JSModuleLoader.cpp:

(JSC::JSModuleLoader::provideFetch):
(JSC::JSModuleLoader::loadAndEvaluateModule):
(JSC::JSModuleLoader::loadModule):
(JSC::JSModuleLoader::linkAndEvaluateModule):
(JSC::JSModuleLoader::requestImportModule):

  • runtime/JSONObject.cpp:

(JSC::JSONProtoFuncParse):

  • runtime/JSObject.cpp:

(JSC::JSObject::putInlineSlow):
(JSC::JSObject::putByIndex):
(JSC::JSObject::notifyPresenceOfIndexedAccessors):
(JSC::JSObject::createInitialIndexedStorage):
(JSC::JSObject::createArrayStorage):
(JSC::JSObject::convertUndecidedToArrayStorage):
(JSC::JSObject::convertInt32ToArrayStorage):
(JSC::JSObject::convertDoubleToArrayStorage):
(JSC::JSObject::convertContiguousToArrayStorage):
(JSC::JSObject::convertFromCopyOnWrite):
(JSC::JSObject::ensureWritableInt32Slow):
(JSC::JSObject::ensureWritableDoubleSlow):
(JSC::JSObject::ensureWritableContiguousSlow):
(JSC::JSObject::ensureArrayStorageSlow):
(JSC::JSObject::setPrototypeDirect):
(JSC::JSObject::deleteProperty):
(JSC::callToPrimitiveFunction):
(JSC::JSObject::hasInstance):
(JSC::JSObject::getOwnNonIndexPropertyNames):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::isExtensible):
(JSC::JSObject::reifyAllStaticProperties):
(JSC::JSObject::fillGetterPropertySlot):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes):
(JSC::JSObject::putByIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putDirectIndexSlowOrBeyondVectorLength):
(JSC::JSObject::getNewVectorLength):
(JSC::JSObject::increaseVectorLength):
(JSC::JSObject::reallocateAndShrinkButterfly):
(JSC::JSObject::shiftButterflyAfterFlattening):
(JSC::JSObject::anyObjectInChainMayInterceptIndexedAccesses const):
(JSC::JSObject::prototypeChainMayInterceptStoreTo):
(JSC::JSObject::needsSlowPutIndexing const):
(JSC::JSObject::suggestedArrayStorageTransition const):

  • runtime/JSObject.h:

(JSC::JSObject::mayInterceptIndexedAccesses):
(JSC::JSObject::hasIndexingHeader const):
(JSC::JSObject::hasCustomProperties):
(JSC::JSObject::hasGetterSetterProperties):
(JSC::JSObject::hasCustomGetterSetterProperties):
(JSC::JSObject::isExtensibleImpl):
(JSC::JSObject::isStructureExtensible):
(JSC::JSObject::indexingShouldBeSparse):
(JSC::JSObject::staticPropertiesReified):
(JSC::JSObject::globalObject const):
(JSC::JSObject::finishCreation):
(JSC::JSNonFinalObject::finishCreation):
(JSC::getCallData):
(JSC::getConstructData):
(JSC::JSObject::getOwnNonIndexPropertySlot):
(JSC::JSObject::putOwnDataProperty):
(JSC::JSObject::putOwnDataPropertyMayBeIndex):
(JSC::JSObject::butterflyPreCapacity):
(JSC::JSObject::butterflyTotalSize):

  • runtime/JSObjectInlines.h:

(JSC::JSObject::putDirectInternal):

  • runtime/JSPromise.cpp:

(JSC::JSPromise::initialize):
(JSC::JSPromise::resolve):

  • runtime/JSPromiseConstructor.cpp:

(JSC::constructPromise):

  • runtime/JSPromiseDeferred.cpp:

(JSC::newPromiseCapability):
(JSC::callFunction):

  • runtime/JSScope.cpp:

(JSC::abstractAccess):

  • runtime/JSScope.h:

(JSC::JSScope::globalObject): Deleted.
Remove this JSScope::globalObject function since it is completely the same to JSObject::globalObject().

  • runtime/JSSet.cpp:

(JSC::JSSet::isIteratorProtocolFastAndNonObservable):

  • runtime/JSSetIterator.cpp:

(JSC::JSSetIterator::createPair):

  • runtime/JSStringIterator.cpp:

(JSC::JSStringIterator::clone):

  • runtime/Lookup.cpp:

(JSC::reifyStaticAccessor):
(JSC::setUpStaticFunctionSlot):

  • runtime/Lookup.h:

(JSC::getStaticPropertySlotFromTable):
(JSC::replaceStaticPropertySlot):
(JSC::reifyStaticProperty):

  • runtime/MapConstructor.cpp:

(JSC::constructMap):

  • runtime/NumberConstructor.cpp:

(JSC::NumberConstructor::finishCreation):

  • runtime/ObjectConstructor.cpp:

(JSC::constructObject):
(JSC::objectConstructorAssign):
(JSC::toPropertyDescriptor):

  • runtime/ObjectPrototype.cpp:

(JSC::objectProtoFuncDefineGetter):
(JSC::objectProtoFuncDefineSetter):
(JSC::objectProtoFuncToLocaleString):

  • runtime/Operations.cpp:

(JSC::jsIsFunctionType): Deleted.
Replace it with JSValue::isFunction(VM&).

  • runtime/Operations.h:
  • runtime/ProgramExecutable.cpp:

(JSC::ProgramExecutable::initializeGlobalProperties):

  • runtime/RegExpConstructor.cpp:

(JSC::constructWithRegExpConstructor):
(JSC::callRegExpConstructor):

  • runtime/SamplingProfiler.cpp:

(JSC::SamplingProfiler::processUnverifiedStackTraces):
(JSC::SamplingProfiler::StackFrame::nameFromCallee):

  • runtime/ScopedArguments.cpp:

(JSC::ScopedArguments::overrideThings):

  • runtime/ScriptExecutable.cpp:

(JSC::ScriptExecutable::newCodeBlockFor):
(JSC::ScriptExecutable::prepareForExecutionImpl):

  • runtime/SetConstructor.cpp:

(JSC::constructSet):

  • runtime/SparseArrayValueMap.cpp:

(JSC::SparseArrayValueMap::putEntry):
(JSC::SparseArrayValueMap::putDirect):

  • runtime/StringConstructor.cpp:

(JSC::constructWithStringConstructor):

  • runtime/StringPrototype.cpp:

(JSC::replaceUsingRegExpSearch):
(JSC::replaceUsingStringSearch):
(JSC::stringProtoFuncIterator):

  • runtime/Structure.cpp:

(JSC::Structure::materializePropertyTable):
(JSC::Structure::willStoreValueSlow):

  • runtime/StructureCache.cpp:

(JSC::StructureCache::emptyStructureForPrototypeFromBaseStructure):

  • runtime/StructureInlines.h:

(JSC::Structure::get):

  • runtime/WeakMapConstructor.cpp:

(JSC::constructWeakMap):

  • runtime/WeakSetConstructor.cpp:

(JSC::constructWeakSet):

  • tools/HeapVerifier.cpp:

(JSC::HeapVerifier::reportCell):

  • tools/JSDollarVM.cpp:

(JSC::functionGlobalObjectForObject):
(JSC::JSDollarVM::finishCreation):

  • wasm/js/JSWebAssemblyInstance.cpp:

(JSC::JSWebAssemblyInstance::finalizeCreation):

  • wasm/js/WasmToJS.cpp:

(JSC::Wasm::handleBadI64Use):
(JSC::Wasm::wasmToJSException):

  • wasm/js/WebAssemblyCompileErrorConstructor.cpp:

(JSC::constructJSWebAssemblyCompileError):
(JSC::callJSWebAssemblyCompileError):

  • wasm/js/WebAssemblyLinkErrorConstructor.cpp:

(JSC::constructJSWebAssemblyLinkError):
(JSC::callJSWebAssemblyLinkError):

  • wasm/js/WebAssemblyModuleRecord.cpp:

(JSC::WebAssemblyModuleRecord::evaluate):

  • wasm/js/WebAssemblyPrototype.cpp:

(JSC::instantiate):

  • wasm/js/WebAssemblyRuntimeErrorConstructor.cpp:

(JSC::constructJSWebAssemblyRuntimeError):
(JSC::callJSWebAssemblyRuntimeError):

  • wasm/js/WebAssemblyToJSCallee.cpp:

(JSC::WebAssemblyToJSCallee::create):

Source/WebCore:

No behavior change.

  • bindings/js/JSCSSRuleListCustom.cpp:

(WebCore::JSCSSRuleListOwner::isReachableFromOpaqueRoots):

  • bindings/js/JSCallbackData.cpp:

(WebCore::JSCallbackData::invokeCallback):

  • bindings/js/JSCustomXPathNSResolver.cpp:

(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):

  • bindings/js/JSDOMBuiltinConstructorBase.cpp:

(WebCore::JSDOMBuiltinConstructorBase::callFunctionWithCurrentArguments):

  • bindings/js/JSDOMConvertScheduledAction.h:

(WebCore::Converter<IDLScheduledAction>::convert):

  • bindings/js/JSDOMIterator.h:

(WebCore::iteratorForEach):

  • bindings/js/JSDOMMapLike.cpp:

(WebCore::forwardFunctionCallToBackingMap):
(WebCore::forwardForEachCallToBackingMap):

  • bindings/js/JSDOMPromise.cpp:

(WebCore::callFunction):

  • bindings/js/JSDOMPromiseDeferred.cpp:

(WebCore::DeferredPromise::callFunction):
(WebCore::createRejectedPromiseWithTypeError):

  • bindings/js/JSDeprecatedCSSOMValueCustom.cpp:

(WebCore::JSDeprecatedCSSOMValueOwner::isReachableFromOpaqueRoots):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginElementCustomPut):
(WebCore::callPlugin):

  • bindings/js/JSWindowProxy.cpp:

(WebCore::JSWindowProxy::setWindow):

  • bindings/js/ReadableStream.cpp:

(WebCore::ReadableStreamInternal::callFunction):

  • bindings/js/ReadableStreamDefaultController.cpp:

(WebCore::callFunction):

  • bindings/js/ScheduledAction.cpp:

(WebCore::ScheduledAction::executeFunctionInContext):

  • bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneSerializer::getProperty):
(WebCore::CloneSerializer::serialize):

  • bindings/js/StructuredClone.cpp:

(WebCore::structuredCloneArrayBufferView):

  • bindings/js/WorkerScriptController.cpp:

(WebCore::WorkerScriptController::initScript):

  • bridge/NP_jsobject.cpp:
  • bridge/objc/WebScriptObject.mm:

(-[WebScriptObject callWebScriptMethod:withArguments:]):

  • testing/Internals.cpp:

(WebCore::Internals::cloneArrayBuffer):

  • testing/js/WebCoreTestSupport.cpp:

(WebCoreTestSupport::injectInternalsObject):

Source/WebKit:

  • WebProcess/Plugins/Netscape/NPJSObject.cpp:

(WebKit::NPJSObject::hasMethod):
(WebKit::NPJSObject::construct):
(WebKit::NPJSObject::invoke):

Source/WebKitLegacy/mac:

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::invoke):

Source/WebKitLegacy/win:

  • Plugins/PluginPackage.cpp:

(WebCore::NPN_Invoke):

10:34 PM Changeset in webkit [232336] by Fujii Hironori
  • 2 edits in trunk/Source/WebKitLegacy/win

REGRESSION(r232316) [Win] error C2039: 'event': is not a member of 'WebCore::NavigationAction'
https://bugs.webkit.org/show_bug.cgi?id=186125

Unreviewed build fix

  • WebActionPropertyBag.cpp:

(WebActionPropertyBag::Read):
(findMouseEvent): Deleted.

9:22 PM Changeset in webkit [232335] by Darin Adler
  • 29 edits in trunk/Source/WebCore

Straighten out HTMLInputElement attribute handling
https://bugs.webkit.org/show_bug.cgi?id=186043

Reviewed by Daniel Bates.

  • dom/RadioButtonGroups.cpp:

(WebCore::RadioButtonGroup::requiredStateChanged): Renamed from requiredAttributeChanged,
and changed to take a reference.
(WebCore::RadioButtonGroups::requiredStateChanged): Ditto.

  • dom/RadioButtonGroups.h: Updated for changes above.
  • html/BaseChooserOnlyDateAndTimeInputType.cpp:

(WebCore::BaseChooserOnlyDateAndTimeInputType::createShadowSubtree): Call
updateInnerTextValue by its new name.
(WebCore::BaseChooserOnlyDateAndTimeInputType::updateInnerTextValue): Renamed
from updateAppearance.
(WebCore::BaseChooserOnlyDateAndTimeInputType::setValue): Call
updateInnerTextValue by its new name.
(WebCore::BaseChooserOnlyDateAndTimeInputType::attributeChanged): Override this
instead of valueAttributeChanged.

  • html/BaseChooserOnlyDateAndTimeInputType.h: Tighten up inheritance a bit.

Also use final a bit more and update for changes above.

  • html/BaseDateAndTimeInputType.cpp:

(WebCore::BaseDateAndTimeInputType::attributeChanged): Replaced
minOrMaxAttributeChanged with this override, checking for the attribute names.

  • html/BaseDateAndTimeInputType.h: Updated for changes above.
  • html/FileInputType.cpp:

(WebCore::FileInputType::disabledStateChanged): Renamed from disabledAttributeChanged.
(WebCore::FileInputType::attributeChanged): Replaced
multipleAttributeChanged with this override, checking for the attribute names.

  • html/FileInputType.h: Updated for changes above.
  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::parseAttribute): Updated function names to say
"state changed" rather than "attribute changed" if they are called only when the
computed value is changed, not the raw attribute value.
(WebCore::HTMLFormControlElement::readOnlyStateChanged): Updated name.
(WebCore::HTMLFormControlElement::requiredStateChanged): Ditto.

  • html/HTMLFormControlElement.h: Updated for changes above.
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::parseAttribute): Removed the code to call lots of specific
attribute changed functions that have now been deleted. Also removed empty code for a
couple of attributes.
(WebCore::HTMLInputElement::disabledStateChanged): Added. Forward call to input type.
(WebCore::HTMLInputElement::readOnlyStateChanged): Ditto.
(WebCore::HTMLInputElement::requiredStateChanged): Renamed from requiredAttributeChanged.

  • html/HTMLInputElement.h: Updated for changes above.
  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::readOnlyStateChanged): Renamed from
readOnlyAttributeChanged. Also fixed incorrect call to base class. This may have
fixed a bug: With some work we could probably create a test case to demonstrate that.

  • html/HTMLTextFormControlElement.h: Updated for changes above.
  • html/ImageInputType.cpp:

(WebCore::ImageInputType::attributeChanged): Replaced
altAttributeChanged and srcAttributeChanged with this override, checking for the
attribute names.

  • html/ImageInputType.h: Updated for changes above.
  • html/InputType.cpp:

(WebCore::InputType::altAttributeChanged): Deleted.
(WebCore::InputType::srcAttributeChanged): Deleted.
(WebCore::InputType::maxResultsAttributeChanged): Deleted.
(WebCore::InputType::minOrMaxAttributeChanged): Deleted.
(WebCore::InputType::stepAttributeChanged): Deleted.
(WebCore::InputType::valueAttributeChanged): Deleted.
(WebCore::InputType::attributeChanged): Moved to header as an inline so derived
classes can call through to the base class with the empty function inlined.
(WebCore::InputType::multipleAttributeChanged): Deleted.
(WebCore::InputType::disabledAttributeChanged): Moved to header as an inline.
(WebCore::InputType::readonlyAttributeChanged): Ditto.
(WebCore::InputType::requiredAttributeChanged): Ditto.

  • html/InputType.h: Updated for changes above.
  • html/NumberInputType.cpp:

(WebCore::NumberInputType::attributeChanged): Replaced
minOrMaxAttributeChanged and stepAttributeChanged with this override, checking
for the attribute names.

  • html/NumberInputType.h: Updated for changes above.
  • html/RangeInputType.cpp:

(WebCore::RangeInputType::disabledStateChanged): Renamed from
disabledAttributeChanged.
(WebCore::RangeInputType::attributeChanged): Replaced
minOrMaxAttributeChanged with this override, checking for the attribute names.

  • html/RangeInputType.h: Updated for changes above.
  • html/SearchInputType.cpp:

(WebCore::SearchInputType::SearchInputType): Removed unneeded initialization of
RefPtr data members to nullptr.
(WebCore::updateResultButtonPseudoType): Removed unneeded if statement; the two
cases above cover 0, and less than 0, so there is no need to check for greater
than 0 for the third case.
(WebCore::SearchInputType::attributeChanged): Replaced
maxResultsAttributeChanged with this override, checking for the attribute name.

  • html/SearchInputType.h: Updated for changes above and marked more

member functions final.

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::attributeChanged): Added a call through to the
base class to match the style of other overrides of this function.
(WebCore::TextFieldInputType::disabledStateChanged): Renamed from disabledAttributeChanged.
(WebCore::TextFieldInputType::readOnlyStateChanged): Renamed from readonlyAttributeChanged.

  • html/TextFieldInputType.h: Updated for changes above. Also made attributeChanged no

longer be marked final since derived classes now override it.

  • html/shadow/SliderThumbElement.cpp:

(WebCore::SliderThumbElement::SliderThumbElement): Moved some data member initialization
from this constructor to the class definition.
(WebCore::SliderThumbElement::hostDisabledStateChanged): Renamed from disabledAttributeChanged.

  • html/shadow/SliderThumbElement.h: Updated for changes above and marked more

member functions final.

8:57 PM Changeset in webkit [232334] by sbarati@apple.com
  • 3 edits
    1 add in trunk

DFG combined liveness needs to say that the machine CodeBlock's arguments are live
https://bugs.webkit.org/show_bug.cgi?id=186121
<rdar://problem/39377796>

Reviewed by Keith Miller.

JSTests:

  • stress/combined-liveness-needs-to-say-arguments-are-live.js: Added.

(baz):
(foo):

Source/JavaScriptCore:

DFG's combined liveness was reporting that the machine CodeBlock's |this|
argument was dead at certain points in the program. However, a CodeBlock's
arguments are considered live for the entire function. This fixes a bug
where object allocation sinking phase skipped materializing an allocation
because it thought that the argument it was associated with, |this|, was dead.

  • dfg/DFGCombinedLiveness.cpp:

(JSC::DFG::liveNodesAtHead):

8:31 PM Changeset in webkit [232333] by Fujii Hironori
  • 8 edits in trunk/Tools

[Win][MiniBrowser] Move MainWindow related code from Common.cpp to MainWindow.cpp
https://bugs.webkit.org/show_bug.cgi?id=186079

Reviewed by Alex Christensen.

This is a sub task of Bug 184770.

This change is partial. I'm going to remove global variables
gMainWindow and gMiniBrowser and convert more functions to
MainWindow's methods in follow-up patches.

  • MiniBrowser/win/CMakeLists.txt: Added Common.cpp
  • MiniBrowser/win/Common.cpp:

(menuItemIsChecked): Moved to MainWindow.cpp.
(turnOffOtherUserAgents): Ditto.
(EditProc): Ditto.
(BackButtonProc): Ditto.
(ForwardButtonProc): Ditto.
(About): Ditto.
(Caches): Ditto.
(CustomUserAgent): Ditto.
(AuthDialogProc): Ditto.
(DisplayAuthDialog): Converted to MainWindow's method.
(ToggleMenuItem): Ditto.
(loadURL): Ditto.

  • MiniBrowser/win/Common.h:
  • MiniBrowser/win/MainWindow.cpp:

(MainWindow::init): Call SetFocus at the end of the construction.
(MainWindow::WndProc):
(menuItemIsChecked): Moved from Common.cpp.
(turnOffOtherUserAgents): Ditto.
(EditProc): Ditto.
(BackButtonProc): Ditto.
(ForwardButtonProc): Ditto.
(About): Ditto.
(Caches): Ditto.
(CustomUserAgent): Ditto.
(authDialogProc): Ditto.
(MainWindow::displayAuthDialog): Converted from a function of Common.cpp.
(MainWindow::toggleMenuItem): Ditto.
(MainWindow::loadURL): Ditto.

  • MiniBrowser/win/MainWindow.h: Added method declarations.
  • MiniBrowser/win/MiniBrowser.h: Added pragma once.
  • MiniBrowser/win/WinMain.cpp:

(wWinMain): Include Common.h instead of Common.cpp.

8:30 PM Changeset in webkit [232332] by Kocsen Chung
  • 1 copy in tags/Safari-606.1.19

Tag Safari-606.1.19.

7:27 PM Changeset in webkit [232331] by n_wang@apple.com
  • 3 edits
    2 adds in trunk

AX: VoiceOver on macOS does not announce fieldset description from aria-describedby when focussing inputs
https://bugs.webkit.org/show_bug.cgi?id=185246
<rdar://problem/39939028>

Reviewed by Chris Fleizach.

Source/WebCore:

Exposed the fieldset's description to its form control children.

Test: accessibility/mac/aria-describedby-fieldset.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::helpText const):

LayoutTests:

  • accessibility/mac/aria-describedby-fieldset-expected.txt: Added.
  • accessibility/mac/aria-describedby-fieldset.html: Added.
6:52 PM Changeset in webkit [232330] by bshafiei@apple.com
  • 1 copy in tags/Safari-606.1.17.20.3

Tag Safari-606.1.17.20.3.

6:51 PM Changeset in webkit [232329] by bshafiei@apple.com
  • 1 copy in tags/Safari-606.1.17.30.4

Tag Safari-606.1.17.30.4.

6:50 PM Changeset in webkit [232328] by bshafiei@apple.com
  • 7 edits in branches/safari-606.1.17.30-branch/Source

Versioning.

6:43 PM Changeset in webkit [232327] by bshafiei@apple.com
  • 7 edits in branches/safari-606.1.17.20-branch/Source

Versioning.

6:21 PM Changeset in webkit [232326] by Chris Fleizach
  • 9 edits
    2 adds in trunk

AX: Expose link rel type to voiceover
https://bugs.webkit.org/show_bug.cgi?id=186084
<rdar://problem/40640871>

Reviewed by Sam Weinig.

Source/WebCore:

Make the link rel attribute available to accessibility clients.

Test: accessibility/mac/linkrel.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::linkRelValue const):

  • accessibility/AccessibilityObject.h:
  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityLinkRelationshipType]):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

LayoutTests:

  • accessibility/image-link-expected.txt:
  • accessibility/image-map2-expected.txt:
  • accessibility/mac/document-links-expected.txt:
  • accessibility/mac/linkrel-expected.txt: Added.
  • accessibility/mac/linkrel.html: Added.
5:41 PM Changeset in webkit [232325] by dino@apple.com
  • 2 edits in branches/safari-606.1.17.20-branch/Source/WebCore

Cherry-pick r232320. rdar://problem/40662705

5:39 PM Changeset in webkit [232324] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Rebaseline http/wpt/service-workers/header-filtering.https.html after r232310.

Unreviewed test gardening.

  • http/wpt/service-workers/header-filtering.https-expected.txt:
5:20 PM Changeset in webkit [232323] by beidson@apple.com
  • 12 edits
    3 adds in trunk

REGRESSION (r224684): User-agent seen by page does not change when modified by the develop menu options after reloading.
<rdar://problem/34918109> and https://bugs.webkit.org/show_bug.cgi?id=186111

Reviewed by Andy Estes.

Source/WebCore:

Test: http/tests/navigation/useragent-reload.php

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::clientHandshakeRequest const): Use setUserAgent() for consistency.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::startLoadingMainResource): Clear the user agent from the original DocumentLoader request

before adding additional fields, as reloads should pick up user agent changes.

Tools:

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp:

(WTR::TestRunner::setCustomUserAgent):

  • WebKitTestRunner/InjectedBundle/TestRunner.h:
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetStateToConsistentValues):

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):

LayoutTests:

  • http/tests/navigation/resources/user-agent-script.php: Added.
  • http/tests/navigation/useragent-reload-expected.txt: Added.
  • http/tests/navigation/useragent-reload.php: Added.
5:18 PM Changeset in webkit [232322] by ddkilzer@apple.com
  • 2 edits
    1 add in trunk/Source/ThirdParty/libwebrtc

Fix leak of a CVPixelBufferRef due to early rerturn in -[RTCVideoEncoderH264 encode:codecSpecificInfo:frameTypes:]
<https://webkit.org/b/186114>
<rdar://problem/40668097>

Reviewed by Eric Carlson.

  • Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm:

(-[RTCVideoEncoderH264 encode:codecSpecificInfo:frameTypes:]):
Call CVBufferRelease(pixelBuffer) before early return to free
it.

  • WebKit/0010-Fix-RTCVideoEncoderH264-CVPixelBuffer-leak.patch: Add.
5:08 PM Changeset in webkit [232321] by Brent Fulgham
  • 7 edits
    1 move
    1 add
    1 delete in trunk/Source/WebKit

[macOS] WebProcess needs TCC entitlements for media capture (Take 2)
https://bugs.webkit.org/show_bug.cgi?id=185526
<rdar://problem/36674649>

Reviewed by Alexey Proskuryakov.

In Bug 181995 I added TCC entitlements for media capture to the macOS entitlements used for
relocatable builds. These changes also need to apply to system builds of WebKit.

Previously we had not needed an entitlements file for system builds of WebKit, so only provided
an entitlements file for our relocatable build targets. Now we need entitlements when building
on recent macOS targets using internal SDKs.

Since these various scenarios are beginning to multiple, this patch dynamically generates the
entitlements file.

This patch does the following:

  1. Changes the "WebContent-OSX.entitlements" to hold the TCC entitlements needed for media capture, and rename to "WebContent-OSX-restricted.entitlements".
  2. Removes the unneeded "com.apple.private.xpc.domain-extension" from WebContent-OSX.entitlement, and dynamically adds it using a new build step using the script 'process-webcontent-entitlements.sh'
  3. Updates DebugRelease.xcconfig to use the 'Safari Engineering' signing key for internal builds.
  4. Updates WebContentService.xcconfig to remove the CODE_SIGN_ENTITLEMENTS_OSX_WITH_XPC_DOMAIN_EXTENSION_YES target since we no longer need a custom entitlement file for this case.
  5. Updates WebContentService.Development.xcconfig to remove CODE_SIGN_ENTITLEMENTS_COCOA_TOUCH_NO since it is no longer needed.
  6. Deletes the file Configurations/WebContent.Development.entitlements since it is no longer needed.
  7. Revises the WebContent process sandbox to allow camera and microphone access without needing TCC entitlements, since those cannot be applied without an internal SDK.
  8. Revises the UserMediaProcessManager to not pass dynamic sandbox extensions to the WebContent process when building with the public SDK since those entitlements cannot be added or consumed in Open Source builds.

We want to use the TCC entitlements when building with the internal SDK on recent macOS builds.

  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/WebContent-OSX-restricted.entitlements: Renamed from Source/WebKit/Configurations/WebContent-OSX.entitlements.
  • Configurations/WebContent.Development.entitlements: Removed.
  • Configurations/WebContentService.Development.xcconfig:
  • Configurations/WebContentService.xcconfig:
  • Scripts/process-webcontent-entitlements.sh: Added.
  • UIProcess/UserMediaProcessManager.cpp:

(WebKit::UserMediaProcessManager::willCreateMediaStream): Don't bother creating and sending sandbox extensions for
camera and microphone control for builds that cannot support them.

  • WebKit.xcodeproj/project.pbxproj:
5:02 PM Changeset in webkit [232320] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

WebContent crashes with system preview content
https://bugs.webkit.org/show_bug.cgi?id=186118

Reviewed by Myles Maxfield.

We were receiving crash reports on iOS devices when getting
platformContext() from a GraphicsContext. This usually
occurred when the page was invisible. Debugging showed that
it was trying to draw with a disabled context.

  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::paintSystemPreviewBadge): Early
return if the context has painting disabled.

4:48 PM Changeset in webkit [232319] by keith_miller@apple.com
  • 2 edits in trunk/JSTests

Unreviewed, uncomment erroneously commented test code.

  • stress/error-stack-trace-limit.js:
4:42 PM Changeset in webkit [232318] by dbates@webkit.org
  • 15 edits in trunk

Web Inspector: Annotate Same-Site cookies
https://bugs.webkit.org/show_bug.cgi?id=184897
<rdar://problem/35178209>

Reviewed by Brian Burg.

Source/JavaScriptCore:

Update protocol to include cookie Same-Site policy.

  • inspector/protocol/Page.json:

Source/WebCore:

Store and retrieve the Same-Site cookie policy from CFNetwork.

  • inspector/agents/InspectorPageAgent.cpp:

(WebCore::cookieSameSitePolicyJSON): Added.
(WebCore::buildObjectForCookie): Modified to include cookie Same-Site policy.

  • platform/Cookie.h:

(WebCore::Cookie::encode const): Encode Same-Site policy.
(WebCore::Cookie::decode): Decode Same-Site policy.

  • platform/network/cocoa/CookieCocoa.mm:

(WebCore::portStringFromVector):
(WebCore::coreSameSitePolicy):
(WebCore::nsSameSitePolicy):
(WebCore::Cookie::operator NSHTTPCookie * _Nullable const):
(WebCore::Cookie::operator NSHTTPCookie * const): Deleted.

Source/WebInspectorUI:

Add a new column for the value of the Same-Site cookie attribute to the resource cookie content
view (shown for a resource under the Network tab) and cookie storage content view (shown under
the Storage tab).

The SameSite column in the resource cookie content view reflects the parsing of the Same-Site
attribute from the HTTP response by Web Inspector. This parsing is materially consistent with
the parsing of the SameSite atttribute in CFNetwork. The Same-Site column in the cookie storage
content view reflects the Same-Site cookie policy associated with the cookies provided by the
network stack, if supported. This column will be blank on systems whose network stack does not
support Same-Site cookies (e.g libsoup).

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Controllers/HARBuilder.js:

(WI.HARBuilder.cookies):

  • UserInterface/Models/Cookie.js:

(WI.Cookie):
(WI.Cookie.displayNameForSameSiteType):
(WI.Cookie.parseSameSiteAttributeValue):
(WI.Cookie.parseSetCookieResponseHeader):

  • UserInterface/Views/CookieStorageContentView.js:

(WI.CookieStorageContentView.prototype._rebuildTable):
(WI.CookieStorageContentView.prototype._sortDataGrid):

  • UserInterface/Views/ResourceCookiesContentView.js:

(WI.ResourceCookiesContentView.prototype.tablePopulateCell):
(WI.ResourceCookiesContentView.prototype._generateSortComparator):
(WI.ResourceCookiesContentView.prototype._refreshResponseCookiesSection):

LayoutTests:

Update an existing test to ensure we include cookie details in the HTTP Archive (HAR) report.

  • http/tests/inspector/network/har/har-page-expected.txt:
  • http/tests/inspector/network/har/har-page.html:
4:34 PM Changeset in webkit [232317] by wilander@apple.com
  • 4 edits in trunk/LayoutTests

Add console logging to grant-storage-access-under-opener.html to assess its flakiness
https://bugs.webkit.org/show_bug.cgi?id=183714
<rdar://problem/38666060>

Unreviewed test gardening.

  • http/tests/storageAccess/grant-storage-access-under-opener-expected.txt:
  • http/tests/storageAccess/grant-storage-access-under-opener.html:

Now outputs console log entries, step by step, to see where the timeouts happen.

  • platform/ios-wk2/TestExpectations:

Switched to [ Pass ] on iOS Debug to maximize chance of seeing the flakiness.

4:30 PM Changeset in webkit [232316] by dbates@webkit.org
  • 9 edits in trunk/Source

NavigationAction does not need to hold initiating DOM Event
https://bugs.webkit.org/show_bug.cgi?id=185958
<rdar://problem/40531539>

Reviewed by Simon Fraser.

Source/WebCore:

Take a similar approach as was done in <https://bugs.webkit.org/show_bug.cgi?id=185712>
and have NavigationAction hold only as many details of the initiating DOM Event as
necessary to support WebKit functionality. Retaining a DOM Event effectively retains
the document that associated with the event. And DocumentLoader always keeps around
the NavigationAction of the last navigation for the "benefit of the various policy handlers".
Therefore, having NavigationAction hold only the relevant details of the DOM Event
instead of the DOM Event itself we avoid keeping the document we navigated from alive
longer than necessary.

  • dom/MouseRelatedEvent.h:
  • dom/UIEventWithKeyState.h:
  • loader/NavigationAction.cpp:

(WebCore::NavigationAction::UIEventWithKeyStateData::UIEventWithKeyStateData): Added.
(WebCore::NavigationAction::MouseEventData::MouseEventData): Added.
(WebCore::keyStateDataForFirstEventWithKeyState): Added.
(WebCore::mouseEventDataForFirstMouseEvent): Added.

  • loader/NavigationAction.h:

(WebCore::NavigationAction::keyStateEventData const): Added.
(WebCore::NavigationAction::mouseEventData const): Added
(WebCore::NavigationAction::event const): Deleted.

Source/WebKit:

Write in terms of NavigationAction::{keyStateEventData, mouseEventDataForFirstMouseEvent}().

  • WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:

(WebKit::mouseButtonForMouseEventData):
(WebKit::syntheticClickTypeForMouseEventData):
(WebKit::clickLocationInRootViewCoordinatesForMouseEventData):
(WebKit::InjectedBundleNavigationAction::modifiersForNavigationAction):
(WebKit::InjectedBundleNavigationAction::mouseButtonForNavigationAction):
(WebKit::InjectedBundleNavigationAction::syntheticClickTypeForNavigationAction):
(WebKit::InjectedBundleNavigationAction::clickLocationInRootViewCoordinatesForNavigationAction):
(WebKit::InjectedBundleNavigationAction::InjectedBundleNavigationAction):
(WebKit::mouseEventForNavigationAction): Deleted.
(WebKit::mouseButtonForMouseEvent): Deleted.
(WebKit::syntheticClickTypeForMouseEvent): Deleted.
(WebKit::clickLocationInRootViewCoordinatesForMouseEvent): Deleted.

Source/WebKitLegacy/mac:

Write in terms of NavigationAction::{keyStateEventData, mouseEventDataForFirstMouseEvent}().

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::actionDictionary const):
(findMouseEvent): Deleted.

4:23 PM Changeset in webkit [232315] by youenn@apple.com
  • 2 edits in trunk/Source/WebCore

Revert changes made to URLWithUserTypedString made in https://trac.webkit.org/changeset/232281
https://bugs.webkit.org/show_bug.cgi?id=186108
<rdar://problem/40663065>

Reviewed by Alex Christensen.

Covered by existing API tests.

  • platform/mac/WebCoreNSURLExtras.mm:

(WebCore::URLWithUserTypedString):
Return early if WebCore::URL is not able to create a CFURL.
Use CFURL otherwise to keep the existing behavior as much as possible.

4:19 PM Changeset in webkit [232314] by keith_miller@apple.com
  • 15 edits
    2 adds in trunk

Error instances should not strongly hold onto StackFrames
https://bugs.webkit.org/show_bug.cgi?id=185996

Reviewed by Mark Lam.

Source/JavaScriptCore:

Previously, we would hold onto all the StackFrames until the the user
looked at one of the properties on the Error object. This patch makes us
only weakly retain the StackFrames and collect all the information
if we are about to collect any frame.

This patch also adds a method to $vm that returns the heaps count
of live global objects.

  • heap/Heap.cpp:

(JSC::Heap::finalizeUnconditionalFinalizers):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::stackTraceAsString):

  • interpreter/Interpreter.h:
  • runtime/Error.cpp:

(JSC::addErrorInfo):

  • runtime/ErrorInstance.cpp:

(JSC::ErrorInstance::finalizeUnconditionally):
(JSC::ErrorInstance::computeErrorInfo):
(JSC::ErrorInstance::materializeErrorInfoIfNeeded):
(JSC::ErrorInstance::visitChildren): Deleted.

  • runtime/ErrorInstance.h:

(JSC::ErrorInstance::subspaceFor):

  • runtime/JSFunction.cpp:

(JSC::getCalculatedDisplayName):

  • runtime/StackFrame.h:

(JSC::StackFrame::isMarked const):

  • runtime/VM.cpp:

(JSC::VM::VM):

  • runtime/VM.h:
  • tools/JSDollarVM.cpp:

(JSC::functionGlobalObjectCount):
(JSC::JSDollarVM::finishCreation):

LayoutTests:

  • js/error-should-not-strong-reference-global-object-expected.txt: Added.
  • js/error-should-not-strong-reference-global-object.html: Added.
4:07 PM Changeset in webkit [232313] by keith_miller@apple.com
  • 10 edits
    2 adds in trunk

LLInt get_by_id prototype caching doesn't properly handle changes
https://bugs.webkit.org/show_bug.cgi?id=186112

Reviewed by Filip Pizlo.

JSTests:

  • stress/llint-proto-get-by-id-cache-change-prototype.js: Added.

(foo):

  • stress/llint-proto-get-by-id-cache-intercept-value.js: Added.

(foo):

Source/JavaScriptCore:

The caching would sometimes fail to track that a prototype had changed
and wouldn't update its set of watchpoints.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finalizeLLIntInlineCaches):

  • bytecode/CodeBlock.h:
  • bytecode/LLIntPrototypeLoadAdaptiveStructureWatchpoint.h:

(JSC::LLIntPrototypeLoadAdaptiveStructureWatchpoint::key const):

  • bytecode/ObjectPropertyConditionSet.h:

(JSC::ObjectPropertyConditionSet::size const):

  • bytecode/Watchpoint.h:

(JSC::Watchpoint::Watchpoint): Deleted.

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::setupGetByIdPrototypeCache):

Source/WTF:

Mark some methods const.

  • wtf/Bag.h:

(WTF::Bag::begin const):
(WTF::Bag::end const):
(WTF::Bag::unwrappedHead const):
(WTF::Bag::end): Deleted.
(WTF::Bag::unwrappedHead): Deleted.

3:11 PM Changeset in webkit [232312] by aestes@apple.com
  • 13 edits in trunk/Source

[Cocoa] Add an SPI to suppress connection termination errors from CFNetwork when network interfaces change
https://bugs.webkit.org/show_bug.cgi?id=186107
<rdar://problem/39338957>

Reviewed by Brady Eidson.

Source/WebCore/PAL:

  • pal/spi/cf/CFNetworkSPI.h: Declared new SPI.

Source/WebKit:

Added an SPI which configures a process pool's networking process to set the
kCFStreamPropertyAutoErrorOnSystemChange to NO on its NSURLSessionConfigurations.
This instructs CFNetwork to not terminate active connections when the system's
network interfaces change.

  • NetworkProcess/NetworkProcess.h:

(WebKit::NetworkProcess::suppressesConnectionTerminationOnSystemChange const):

  • NetworkProcess/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):

  • NetworkProcess/NetworkProcessCreationParameters.h:
  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm:

(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):

  • UIProcess/API/APIProcessPoolConfiguration.cpp:

(API::ProcessPoolConfiguration::copy):

  • UIProcess/API/APIProcessPoolConfiguration.h:
  • UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
  • UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:

(-[_WKProcessPoolConfiguration suppressesConnectionTerminationOnSystemChange]):
(-[_WKProcessPoolConfiguration setSuppressesConnectionTerminationOnSystemChange:]):

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::platformInitializeNetworkProcess):

2:38 PM Changeset in webkit [232311] by youenn@apple.com
  • 9 edits in trunk/Source

Rename FromOrigin runtime flag to CrossOriginResourcePolicy and enable it by default
https://bugs.webkit.org/show_bug.cgi?id=186082

Reviewed by Chris Dumez.

Source/WebCore:

No change of behavior.

  • page/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::setCrossOriginResourcePolicyEnabled):
(WebCore::RuntimeEnabledFeatures::crossOriginResourcePolicyEnabled const):
(WebCore::RuntimeEnabledFeatures::setFromOriginResponseHeaderEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::fromOriginResponseHeaderEnabled const): Deleted.

Source/WebKit:

  • NetworkProcess/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::encode const):
(WebKit::NetworkResourceLoadParameters::decode):

  • NetworkProcess/NetworkResourceLoadParameters.h:
  • Shared/WebPreferences.yaml:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetCrossOriginResourcePolicyEnabled):
(WKPreferencesGetCrossOriginResourcePolicyEnabled):
(WKPreferencesSetFromOriginResponseHeaderEnabled): Deleted.
(WKPreferencesGetFromOriginResponseHeaderEnabled): Deleted.

  • UIProcess/API/C/WKPreferencesRef.h:
  • WebProcess/Network/WebLoaderStrategy.cpp:

(WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):

2:30 PM Changeset in webkit [232310] by Chris Dumez
  • 13 edits
    9 adds in trunk

Referrer-Policy response header is ignored
https://bugs.webkit.org/show_bug.cgi?id=186037
<rdar://problem/40600335>

Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

Rebaseline existing WPT now that one more check is passing.

  • web-platform-tests/fetch/api/policies/referrer-origin-expected.txt:

Source/WebCore:

Add support for Referrer-Policy HTTP response header:

Tests: http/tests/security/referrer-policy-header-and-meta-tag-emptyString.html

http/tests/security/referrer-policy-header-and-meta-tag.html
http/tests/security/referrer-policy-header.html

  • dom/Document.cpp:

(WebCore::Document::setReferrerPolicy):
(WebCore::Document::processReferrerPolicy):

  • dom/Document.h:

(WebCore::Document::referrerPolicy const):

  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::process):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::didBeginDocument):

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::updateReferrerPolicy):

  • platform/ReferrerPolicy.cpp:

(WebCore::parseReferrerPolicyToken):
(WebCore::parseReferrerPolicy):

  • platform/ReferrerPolicy.h:

LayoutTests:

Add layout test coverage.

  • http/tests/security/referrer-policy-header-and-meta-tag-emptyString-expected.txt: Added.
  • http/tests/security/referrer-policy-header-and-meta-tag-emptyString.html: Added.
  • http/tests/security/referrer-policy-header-and-meta-tag-expected.txt: Added.
  • http/tests/security/referrer-policy-header-and-meta-tag.html: Added.
  • http/tests/security/referrer-policy-header-expected.txt: Added.
  • http/tests/security/referrer-policy-header.html: Added.
  • http/tests/security/referrer-policy-invalid-expected.txt:
  • http/tests/security/referrer-policy-invalid.html:
  • http/tests/security/resources/postReferrer.php: Added.
  • http/tests/security/resources/serve-referrer-policy-and-meta-tag.php: Added.
  • http/tests/security/resources/serve-referrer-policy-and-test.php: Added.
1:44 PM Changeset in webkit [232309] by youenn@apple.com
  • 18 edits in trunk

Rename CrossOriginResourcePolicy same to same-origin
https://bugs.webkit.org/show_bug.cgi?id=186080

Reviewed by Chris Dumez.

Source/WebCore:

Covered by updated tests.

  • platform/network/HTTPParsers.cpp:

(WebCore::parseCrossOriginResourcePolicyHeader):

  • platform/network/HTTPParsers.h:

Source/WebKit:

  • NetworkProcess/NetworkLoadChecker.cpp:

(WebKit::NetworkLoadChecker::shouldCrossOriginResourcePolicyPolicyCancelLoad):

Tools:

  • TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp:

(TestWebKitAPI::TEST):

LayoutTests:

  • http/wpt/cross-origin-resource-policy/fetch-expected.txt:
  • http/wpt/cross-origin-resource-policy/fetch-in-iframe-expected.txt:
  • http/wpt/cross-origin-resource-policy/fetch-in-iframe.html:
  • http/wpt/cross-origin-resource-policy/fetch.html:
  • http/wpt/cross-origin-resource-policy/iframe-loads-expected.txt:
  • http/wpt/cross-origin-resource-policy/iframe-loads.html:
  • http/wpt/cross-origin-resource-policy/image-loads-expected.txt:
  • http/wpt/cross-origin-resource-policy/image-loads.html:
  • http/wpt/cross-origin-resource-policy/script-loads-expected.txt:
  • http/wpt/cross-origin-resource-policy/script-loads.html:
1:41 PM Changeset in webkit [232308] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebKit

[iOS] -[WKFullScreenViewController viewWillAppear:] should call [super viewWillAppeear:]
<https://webkit.org/b/186103>
<rdar://problem/40655695>

Reviewed by Eric Carlson.

  • UIProcess/ios/fullscreen/WKFullScreenViewController.mm:

(WKFullScreenViewControllerPlaybackSessionModelClient::setInterface):
Drive-by clean up. For consistency, we always use the same
variable in the body of the if statement that was used in the
condition.
(-[WKFullScreenViewController viewWillAppear:]): Call
[super viewWillAppeear:] to fulfill API contract.

1:37 PM Changeset in webkit [232307] by Chris Dumez
  • 3 edits in trunk/Source/WebKit

Take a background process assertion in WebPageProxy::callAfterNextPresentationUpdate()
https://bugs.webkit.org/show_bug.cgi?id=186097
<rdar://problem/40651225>

Reviewed by Dan Bernstein.

Refactor fix landed in r232298 so that we rely on the existing Callback infrastructure
to take a background process assertion.

  • UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm:

(WebKit::RemoteLayerTreeDrawingAreaProxy::dispatchAfterEnsuringDrawing):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::callAfterNextPresentationUpdate):

1:35 PM Changeset in webkit [232306] by commit-queue@webkit.org
  • 8 edits in trunk/Source

Fix the ENABLE(DATALIST_ELEMENT) build
https://bugs.webkit.org/show_bug.cgi?id=186105

Patch by Aditya Keerthi <Aditya Keerthi> on 2018-05-30
Reviewed by Wenson Hsieh.

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • html/ColorInputType.cpp:

(WebCore::ColorInputType::suggestions const):

  • html/HTMLInputElement.h:
  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::ownerDataListElement const):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::paintSliderTicks):

Source/WebKit:

  • WebProcess/Automation/WebAutomationSessionProxy.cpp:
1:05 PM Changeset in webkit [232305] by mitz@apple.com
  • 9 copies
    1 add in releases/Apple/Safari Technology Preview 57

Added a tag for Safari Technology Preview release 57.

12:47 PM Changeset in webkit [232304] by ddkilzer@apple.com
  • 4 edits in trunk/Source/ThirdParty/ANGLE

ANGLE: Fix clang static analyzer issues in GetExecutablePath() and GetExecutableDirectory()
<https://webkit.org/b/186106>
<rdar://problem/40659179>

Reviewed by Alex Christensen.

  • src/common/system_utils_linux.cpp:

(angle::GetExecutablePath):
(angle::GetExecutableDirectory):

  • src/common/system_utils_mac.cpp:

(angle::GetExecutablePath):
(angle::GetExecutableDirectory):

  • src/common/system_utils_win.cpp:

(angle::GetExecutablePath):
(angle::GetExecutableDirectory):

12:23 PM Changeset in webkit [232303] by jiewen_tan@apple.com
  • 3 edits in trunk/Source/WebKit

Unreviewed, a quick build fix for r232276.

Enabled SecItemShim again as it turns out to be useful for CFNetwork APIs that
query Keychains underneath us.

  • NetworkProcess/ios/NetworkProcessIOS.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcess):

  • NetworkProcess/mac/NetworkProcessMac.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcess):

12:21 PM Changeset in webkit [232302] by commit-queue@webkit.org
  • 12 edits in trunk/Source

Reduce String allocations
https://bugs.webkit.org/show_bug.cgi?id=186059

Patch by Alex Christensen <achristensen@webkit.org> on 2018-05-30
Reviewed by Darin Adler.

Source/WebCore:

Don't allocate Strings just to convert it to another form.
Based mostly on Darin's feedback on bug 185986.

No change in behavior.

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::hostName):
(WebCore::WebSocketHandshake::host const):

  • css/parser/CSSSelectorParser.cpp:

(WebCore::CSSSelectorParser::consumePseudo):
(WebCore::CSSSelectorParser::consumeANPlusB):

  • loader/mac/LoaderNSURLExtras.mm:

(suggestedFilenameWithMIMEType):

  • page/SecurityOriginData.h:

(WebCore::SecurityOriginData::fromURL):

  • page/csp/ContentSecurityPolicySource.cpp:

(WebCore::wildcardMatches):
(WebCore::ContentSecurityPolicySource::hostMatches const):

  • platform/URL.cpp:

(WebCore::URL::hostAndPort const):

  • platform/network/cf/SocketStreamHandleImplCFNet.cpp:

(WebCore::SocketStreamHandleImpl::createStreams):

Source/WTF:

  • wtf/text/StringView.cpp:

(WTF::convertASCIICase):
(WTF::StringView::convertToASCIILowercase const):
(WTF::StringView::convertToASCIIUppercase const):

  • wtf/text/StringView.h:
  • wtf/text/cf/StringViewCF.cpp:

(WTF::StringView::createCFString const):

11:00 AM Changeset in webkit [232301] by jer.noble@apple.com
  • 7 edits in trunk/Source/WebKit

Auto-pip should use main content heuristic.
https://bugs.webkit.org/show_bug.cgi?id=186065
<rdar://problem/35862502>

Reviewed by Eric Carlson.

Make the m_pipStandbyElement clearable, which will allow the auto-pip mechanism to be torn down. Add
a WebProcess-side notification when the main content changes, to facilitate this.

  • WebProcess/FullScreen/WebFullScreenManager.cpp:

(WebKit::WebFullScreenManager::videoControlsManagerDidChange):
(WebKit::WebFullScreenManager::setPIPStandbyElement):
(WebKit::WebFullScreenManager::didEnterFullScreen):
(WebKit::WebFullScreenManager::willExitFullScreen):

  • WebProcess/FullScreen/WebFullScreenManager.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::videoControlsManagerDidChange):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/cocoa/PlaybackSessionManager.h:
  • WebProcess/cocoa/PlaybackSessionManager.mm:

(WebKit::PlaybackSessionManager::setUpPlaybackControlsManager):
(WebKit::PlaybackSessionManager::clearPlaybackControlsManager):
(WebKit::PlaybackSessionManager::currentPlaybackControlsElement const):

11:00 AM Changeset in webkit [232300] by jer.noble@apple.com
  • 8 edits
    2 adds in trunk

Media elements outside fullscreen should not be considered main content.
https://bugs.webkit.org/show_bug.cgi?id=186063
<rdar://problem/40630437>

Reviewed by Eric Carlson.

Source/WebCore:

Test: platform/mac/media/video-best-element-for-playback-controls-purpose.html

Media elements outside the current fullscreen element are not visible, and thus should not be considered
main content.

Drive-by fix: set the m_hasEverNotifiedAboutPlaying before dispatching the 'playing' event, so that
tests can check bestMediaElementForShowingPlaybackControlsManager() in the 'playing' handler.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::notifyAboutPlaying):

  • html/HTMLMediaElement.h:
  • html/MediaElementSession.cpp:

(WebCore::MediaElementSession::canShowControlsManager const):

  • testing/Internals.cpp:

(WebCore::Internals::bestMediaElementForShowingPlaybackControlsManager):

  • testing/Internals.h:
  • testing/Internals.idl:

LayoutTests:

  • platform/mac/media/video-best-element-for-playback-controls-purpose-expected.txt: Added.
  • platform/mac/media/video-best-element-for-playback-controls-purpose.html: Added.
10:46 AM Changeset in webkit [232299] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit

Fix a few issues in WKFullScreenViewController
https://bugs.webkit.org/show_bug.cgi?id=186067
<rdar://problem/40630944>

Reviewed by Darin Adler.

The check in setInterface() is checking the wrong pointer:

  • UIProcess/ios/fullscreen/WKFullScreenViewController.mm:

(WKFullScreenViewControllerPlaybackSessionModelClient::setInterface):

The check in -_effectiveFullscreenInsetTop is backwards:
(-[WKFullScreenViewController _effectiveFullscreenInsetTop]):

10:42 AM Changeset in webkit [232298] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Take a background process assertion in WebPageProxy::callAfterNextPresentationUpdate()
https://bugs.webkit.org/show_bug.cgi?id=186097
<rdar://problem/40651225>

Reviewed by Tim Horton.

Take a background process assertion in WebPageProxy::callAfterNextPresentationUpdate(). Otherwise,
apps may get stuck on _doAfterNextPresentationUpdate because the WebProcess got suspended.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::callAfterNextPresentationUpdate):

10:06 AM Changeset in webkit [232297] by Michael Catanzaro
  • 2 edits in trunk/Source/WebCore

Unreviewed, silence a -Wreturn-type warning

  • css/SVGCSSComputedStyleDeclaration.cpp:

(WebCore::glyphOrientationToCSSPrimitiveValue):

9:46 AM Changeset in webkit [232296] by Ms2ger@igalia.com
  • 4 edits in trunk

[GTK] Unreviewed test gardening
https://bugs.webkit.org/show_bug.cgi?id=186098

Unreviewed gardening.

Tools:

  • TestWebKitAPI/glib/TestExpectations.json: update expectations.

LayoutTests:

  • platform/gtk/TestExpectations:
    • css3/blending/blend-mode-clip-accelerated-transformed-blending.html: passing since r230479, failing again since 230991.
    • fast/text/font-collection.html: fails due to a lack of font collection support
    • editing/caret/caret-in-empty-cell.html: fails since it was added
    • css3/color-filters/color-filter-color-property-list-item.html: fails since it was added
    • css3/color-filters/color-filter-opacity.html: fails since it was added
    • fast/hidpi/filters-turbulence.html: fails since it was added
9:40 AM Changeset in webkit [232295] by Caio Lima
  • 6 edits
    7 adds in trunk

[ESNext][BigInt] Implement support for "%" operation
https://bugs.webkit.org/show_bug.cgi?id=184327

Reviewed by Yusuke Suzuki.

JSTests:

  • bigIntTests.yaml:
  • stress/big-int-mod-memory-stress.js: Added.
  • stress/big-int-mod-to-primitive-precedence.js: Added.
  • stress/big-int-mod-to-primitive.js: Added.
  • stress/big-int-mod-type-error.js: Added.
  • stress/big-int-mod-wrapped-value.js: Added.
  • stress/big-int-mod.js: Added.

Source/JavaScriptCore:

We are introducing the support of BigInt into remainder (a.k.a mod)
operation.

  • runtime/CommonSlowPaths.cpp:

(JSC::SLOW_PATH_DECL):

  • runtime/JSBigInt.cpp:

(JSC::JSBigInt::remainder):
(JSC::JSBigInt::rightTrim):

  • runtime/JSBigInt.h:
9:20 AM Changeset in webkit [232294] by sbarati@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

AI for Atomics.load() is too conservative in always clobbering world
https://bugs.webkit.org/show_bug.cgi?id=185738
<rdar://problem/40342214>

Reviewed by Yusuke Suzuki.

It fails the assertion that Fil added for catching disagreements between
AI and clobberize. This patch fixes that. You'd run into this if you
manually enabled SAB in a build and ran any SAB tests.

  • dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):

9:18 AM WebKitGTK/Gardening/Calendar edited by Ms2ger@igalia.com
(diff)
9:09 AM Changeset in webkit [232293] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r232212): Broke Win32 Builds
https://bugs.webkit.org/show_bug.cgi?id=186061

Reviewed by Yusuke Suzuki.

Changed Windows builds with the JIT disabled to generate and use LLIntAssembly.h
instead of LowLevelInterpreterWin.asm.

  • CMakeLists.txt:
8:47 AM Changeset in webkit [232292] by ap@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix attempt after https://trac.webkit.org/r232198

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::ResourceHandle::createCFURLConnection): Added some toString() calls.

8:26 AM Changeset in webkit [232291] by Alan Bujtas
  • 9 edits in trunk/Source/WebCore

[LFC] Miscellaneous fixes to get closer to geometry correctness
https://bugs.webkit.org/show_bug.cgi?id=186083

Reviewed by Antti Koivisto.

  • layout/FormattingContextGeometry.cpp:

(WebCore::Layout::FormattingContext::Geometry::computedBorder):

  • layout/LayoutContext.cpp:

(WebCore::Layout::LayoutContext::initializeRoot):

  • layout/Verification.cpp:

(WebCore::Layout::outputMismatchingBoxInformationIfNeeded):

  • layout/blockformatting/BlockFormattingContextGeometry.cpp:

(WebCore::Layout::isStretchedToViewport):
(WebCore::Layout::initialContainingBlock):
(WebCore::Layout::computedInFlowNonReplacedComputedHeight):
(WebCore::Layout::inFlowNonReplacedComputedWidth):
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedHeight): lambda should capture the specification part.
(WebCore::Layout::BlockFormattingContext::Geometry::inFlowNonReplacedWidth):

  • layout/displaytree/DisplayBox.cpp:

(WebCore::Display::Box::marginBox const):
(WebCore::Display::Box::paddingBox const):
(WebCore::Display::Box::contentBox const):

  • layout/layouttree/LayoutBox.cpp:

(WebCore::Layout::Box::isDocumentBox const):
(WebCore::Layout::Box::isBodyBox const):

  • layout/layouttree/LayoutBox.h:
  • rendering/style/BorderValue.h: ignore border-width when type is hidden or none.

(WebCore::BorderValue::boxModelWidth const):

7:13 AM Changeset in webkit [232290] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[MIPS] Fix build on MIPS32r1
https://bugs.webkit.org/show_bug.cgi?id=185944

Patch by Dominik Infuehr <dinfuehr@igalia.com> on 2018-05-30
Reviewed by Yusuke Suzuki.

Source/JavaScriptCore:

Only use instructions on MIPS32r2 or later. mthc1 and mfhc1 are not supported
on MIPS32r1.

  • offlineasm/mips.rb:

Source/WTF:

Added WTF_MIPS_ISA_REV_AT_LEAST to test for certain release or later.

  • wtf/Platform.h:
6:35 AM Changeset in webkit [232289] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

iOS: setting 'defaultValue' of input type=date from script should cause a UI update
https://bugs.webkit.org/show_bug.cgi?id=185982

Patch by Stephen McGruer <Stephen McGruer> on 2018-05-30
Reviewed by Darin Adler.

Source/WebCore:

Test: fast/forms/date/date-appearance-defaultValue.html

  • html/BaseChooserOnlyDateAndTimeInputType.cpp:

(WebCore::BaseChooserOnlyDateAndTimeInputType::valueAttributeChanged):

  • html/BaseChooserOnlyDateAndTimeInputType.h:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::parseAttribute):

  • html/InputType.cpp:

(WebCore::InputType::valueAttributeChanged):

  • html/InputType.h:

LayoutTests:

  • fast/forms/date/date-appearance-defaultValue-expected.html: Added.
  • fast/forms/date/date-appearance-defaultValue.html: Added.
2:28 AM Changeset in webkit [232288] by fred.wang@free.fr
  • 5 edits
    22 adds in trunk/LayoutTests

Import WPT tests for CSS animations
https://bugs.webkit.org/show_bug.cgi?id=186046

Patch by Frederic Wang <fwang@igalia.com> on 2018-05-29
Reviewed by Youenn Fablet.

LayoutTests/imported/w3c:

  • resources/import-expectations.json:
  • web-platform-tests/css/css-animations/OWNERS: Added.
  • web-platform-tests/css/css-animations/animation-delay-008-expected.html: Added.
  • web-platform-tests/css/css-animations/animation-delay-008.html: Added.
  • web-platform-tests/css/css-animations/animation-delay-009-expected.html: Added.
  • web-platform-tests/css/css-animations/animation-delay-009.html: Added.
  • web-platform-tests/css/css-animations/animation-delay-010-expected.html: Added.
  • web-platform-tests/css/css-animations/animation-delay-010.html: Added.
  • web-platform-tests/css/css-animations/animation-delay-011-expected.html: Added.
  • web-platform-tests/css/css-animations/animation-delay-011.html: Added.
  • web-platform-tests/css/css-animations/animation-iteration-count-calc-expected.txt: Added.
  • web-platform-tests/css/css-animations/animation-iteration-count-calc.html: Added.
  • web-platform-tests/css/css-animations/animationevent-interface-expected.txt: Added.
  • web-platform-tests/css/css-animations/animationevent-interface.html: Added.
  • web-platform-tests/css/css-animations/animationevent-interface.js: Added.

(test):

  • web-platform-tests/css/css-animations/animationevent-pseudoelement-expected.txt: Added.
  • web-platform-tests/css/css-animations/animationevent-pseudoelement.html: Added.
  • web-platform-tests/css/css-animations/animationevent-types-expected.txt: Added.
  • web-platform-tests/css/css-animations/animationevent-types.html: Added.
  • web-platform-tests/css/css-animations/pending-style-changes-001-expected.txt: Added.
  • web-platform-tests/css/css-animations/pending-style-changes-001.html: Added.
  • web-platform-tests/css/css-animations/w3c-import.log: Added.

LayoutTests:

  • TestExpectations: Mark some tests requiring support for reftest-wait as failing/flacky.
  • tests-options.json: Mark animationevent-types.html as slow.

May 29, 2018:

11:30 PM Changeset in webkit [232287] by n_wang@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, follow-up after r232285
https://bugs.webkit.org/show_bug.cgi?id=180871

Removed redundant null check.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::isExpanded const):

9:36 PM Changeset in webkit [232286] by sbarati@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Add a version of JSVirtualMachine shrinkFootprint that runs when the VM goes idle
https://bugs.webkit.org/show_bug.cgi?id=186064

Reviewed by Mark Lam.

shrinkFootprint was implemented as:
`
sanitizeStackForVM(this);
deleteAllCode(DeleteAllCodeIfNotCollecting);
heap.collectNow(Synchronousness::Sync);
WTF::releaseFastMallocFreeMemory();
`

However, for correctness reasons, deleteAllCode is implemented to do
work when the VM is idle: no JS is running on the stack. This means
that if shrinkFootprint is called when JS is running on the stack, it
ends up freeing less memory than it could have if it waited to run until
the VM goes idle.

This patch makes it so we wait until idle before doing work. I'm seeing a
10% footprint progression when testing this against a client of the JSC SPI.

Because this is a semantic change in how the SPI works, this patch
adds new SPI named shrinkFootprintWhenIdle. The plan is to move
all clients of the shrinkFootprint SPI to shrinkFootprintWhenIdle.
Once that happens, we will delete shrinkFootprint. Until then,
we make shrinkFootprint do exactly what shrinkFootprintWhenIdle does.

  • API/JSVirtualMachine.mm:

(-[JSVirtualMachine shrinkFootprint]):
(-[JSVirtualMachine shrinkFootprintWhenIdle]):

  • API/JSVirtualMachinePrivate.h:
  • runtime/VM.cpp:

(JSC::VM::shrinkFootprintWhenIdle):
(JSC::VM::shrinkFootprint): Deleted.

  • runtime/VM.h:
9:01 PM Changeset in webkit [232285] by n_wang@apple.com
  • 5 edits in trunk

AX: macOS VoiceOver doesn't announce when details element is expanded when using role group
https://bugs.webkit.org/show_bug.cgi?id=180866
<rdar://problem/36074338>

Reviewed by Chris Fleizach.

Source/WebCore:

We should use is<HTMLDetailsElement> to check for the details parent instead
of using the role.

Added test cases to the existing test.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::isExpanded const):

LayoutTests:

  • accessibility/mac/details-summary-expected.txt:
  • accessibility/mac/details-summary.html:
8:36 PM Changeset in webkit [232284] by timothy_horton@apple.com
  • 4 edits in trunk/Source

Fix the build
https://bugs.webkit.org/show_bug.cgi?id=186078

Unreviewed build fix.

Source/WebKit:

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _denyNextUserMediaRequest]):

Source/WTF:

  • wtf/Platform.h:
5:47 PM Changeset in webkit [232283] by aestes@apple.com
  • 6 edits
    1 move in trunk/Source/WebKit

[Wi-Fi Assertions] Track whether WiFiAssertionHolder should actually hold a Wi-Fi assertion
https://bugs.webkit.org/show_bug.cgi?id=185983
<rdar://problem/40205486>

Reviewed by Tim Horton.

  • Configurations/Network-iOS.entitlements:

Added a needed entitlement.

  • NetworkProcess/cocoa/NetworkDataTaskCocoa.h:
  • NetworkProcess/cocoa/WiFiAssertionHolder.h:

(WebKit::WiFiAssertionHolder::shouldHoldWiFiAssertion const):

Track whether WiFiAssertionHolder should actually hold a Wi-Fi assertion.

  • NetworkProcess/cocoa/WiFiAssertionHolder.mm: Renamed from Source/WebKit/NetworkProcess/cocoa/WiFiAssertionHolder.cpp.

(holdWiFiAssertion):
(releaseWiFiAssertion):
(WebKit::WiFiAssertionHolder::WiFiAssertionHolder):
(WebKit::WiFiAssertionHolder::~WiFiAssertionHolder):

Changed holdWiFiAssertion() and releaseWiFiAssertion() to take the
WiFiAssertionHolder as an argument.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:

Added a needed sandbox extension.

  • WebKit.xcodeproj/project.pbxproj:
5:40 PM Changeset in webkit [232282] by caitp@igalia.com
  • 2 edits in trunk/JSTests

[JSTests] update test262 expectations after r232261
https://bugs.webkit.org/show_bug.cgi?id=184267

Reviewed by Saam Barati.

  • test262/expectations.yaml:
5:18 PM Changeset in webkit [232281] by youenn@apple.com
  • 13 edits in trunk

Add a consistency check between URL and CFURL
Source/WebCore:

https://bugs.webkit.org/show_bug.cgi?id=186057
<rdar://problem/40258457>

Reviewed by Geoff Garen.

It is important that WebCore::URL used in WebCore and CFURL that gets serialized in the network pipe remain consistent.
Otherwise, we will end-up with odd bugs.

We add such a check when creating a CFURL from an URL.
To make things more consistent, we also rely now more on WebCore::URL instead of directly creating a CFURL.

  • platform/URL.h:
  • platform/cf/CFURLExtras.cpp:

(WebCore::isCFURLSameOrigin):

  • platform/cf/CFURLExtras.h:
  • platform/cf/URLCF.cpp:

(WebCore::URL::createCFURL const):

  • platform/mac/URLMac.mm:

(WebCore::URL::createCFURL const):

  • platform/mac/WebCoreNSURLExtras.mm:

(WebCore::URLWithUserTypedString):

Source/WebKit:

https://bugs.webkit.org/show_bug.cgi?id=186057
<rdar://problem/40258457>

Reviewed by Geoff Garen.

  • Shared/Cocoa/WKNSURLExtras.mm:

(+[NSURL _web_URLWithWTFString:relativeToURL:]):
(urlWithWTFString): Deleted.
(+[NSURL _web_URLWithWTFString:]): Deleted.

Tools:

https://bugs.webkit.org/show_bug.cgi?id=182444
<rdar://problem/37164835>

Reviewed by Geoff Garen.

DRT code expected a non null URL which is no longer the case now.
Updated DRT to remove that assumption.

  • DumpRenderTree/TestRunner.cpp:

(TestRunner::redirectionDestinationForURL):

  • DumpRenderTree/TestRunner.h:
  • DumpRenderTree/mac/ResourceLoadDelegate.mm:

(-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):

5:03 PM Changeset in webkit [232280] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit

Remove unused WebPage::dummy
https://bugs.webkit.org/show_bug.cgi?id=186068

Patch by Alex Christensen <achristensen@webkit.org> on 2018-05-29
Reviewed by Sam Weinig.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::dummy): Deleted.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
4:48 PM Changeset in webkit [232279] by sbarati@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

shrinkFootprint needs to request a full collection
https://bugs.webkit.org/show_bug.cgi?id=186069

Reviewed by Mark Lam.

  • runtime/VM.cpp:

(JSC::VM::shrinkFootprint):

4:41 PM Changeset in webkit [232278] by timothy@apple.com
  • 5 edits in trunk/Source/WebCore

Printing does not apply the right colors in all cases.

https://bugs.webkit.org/show_bug.cgi?id=186066
rdar://problem/40274975

Reviewed by Tim Horton.

  • inspector/agents/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::setEmulatedMedia): Call RenderTheme::platformColorsDidChange
to invalidate the color cache.

  • page/FrameView.cpp:

(WebCore::FrameView::adjustMediaTypeForPrinting): Ditto.

  • page/Page.cpp:

(WebCore::Page::defaultAppearance const): Added. Use default when not screen.

  • page/Page.h:

(WebCore::Page::defaultAppearance const): Deleted.

4:28 PM Changeset in webkit [232277] by pvollan@apple.com
  • 6 edits in trunk/Source

Create typedef for HashMap<PlatformDisplayID, ScreenProperties>
https://bugs.webkit.org/show_bug.cgi?id=186056

Reviewed by Brent Fulgham.

Source/WebCore:

No new tests, no change in behavior.

  • platform/PlatformScreen.h:
  • platform/mac/PlatformScreenMac.mm:

(WebCore::screenProperties):
(WebCore::getScreenProperties):
(WebCore::setScreenProperties):

Source/WebKit:

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
3:59 PM Changeset in webkit [232276] by jiewen_tan@apple.com
  • 8 edits in trunk/Source/WebKit

Tighten sandbox profiles for Networking Processes to restrict accesses to macOS/iOS Keychains
https://bugs.webkit.org/show_bug.cgi?id=162948
<rdar://problem/40558894>

Reviewed by Brent Fulgham.

The patch conditionally tighten sandbox profiles for Networking Processes to remove Keychain related
permissions and some security permisssions that are not needed. Also it conditionally remove the
Process Privilege for Networking Processes to access Credentials.

In addition, it remove process privilege assertions for SecItemShim as it is supposed to work in processes
that don't have privileges to access Keychains and delegate all operations to UI Process via IPC. Also,
the patch disables SecItemShim for Networking Process conditionally.

  • Configurations/Network-iOS.entitlements:
  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeNetworkProcess):

  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
  • Shared/mac/SecItemShim.cpp:

(WebKit::sendSecItemRequest):
(WebKit::webSecItemCopyMatching):
(WebKit::webSecItemAdd):
(WebKit::webSecItemUpdate):
(WebKit::webSecItemDelete):
(WebKit::initializeSecItemShim):

3:14 PM Changeset in webkit [232275] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Store 0-lifetime stylesheets / scripts into the disk cache for faster history navigations
https://bugs.webkit.org/show_bug.cgi?id=186060
<rdar://problem/40627270>

Reviewed by Geoffrey Garen.

Tweak our storeUnconditionallyForHistoryNavigation logic to match resources whose priority
is High, not just VeryHigh. Per logic in CachedResource::defaultPriorityForResourceType(Type),
This now matches stylesheets and scripts in addition to main resources.

I found that in case of a history navigation to apple.com, a significant number of scripts
and stylesheets had to be loaded from the network because our previous heuristic decided
not to store them (because their priority was not VeryHigh and because their max-age was
0).

  • NetworkProcess/cache/NetworkCache.cpp:

(WebKit::NetworkCache::makeStoreDecision):

2:29 PM Changeset in webkit [232274] by commit-queue@webkit.org
  • 6 edits
    1 add in trunk/Tools

Export changes to web-platform-test as part of the webkit-patch upload workflow
https://bugs.webkit.org/show_bug.cgi?id=184914

Patch by Brendan McLoughlin <brendan@bocoup.com> on 2018-05-29
Reviewed by Youenn Fablet.

  • Scripts/webkitpy/tool/commands/upload.py:

(Upload):
(CreateBug.execute):
(WPTChangeExport):

  • Scripts/webkitpy/tool/steps/init.py:
  • Scripts/webkitpy/tool/steps/wptchangeexport.py: Added.

(WPTChangeExport):
(WPTChangeExport.options):
(WPTChangeExport.run):

  • Scripts/webkitpy/w3c/common.py:
  • Scripts/webkitpy/w3c/test_exporter.py:

(WebPlatformTestExporter):
(WebPlatformTestExporter.init):
(WebPlatformTestExporter.username):
(WebPlatformTestExporter.token):
(WebPlatformTestExporter._github):
(WebPlatformTestExporter._wpt_fork_branch_github_url):
(WebPlatformTestExporter._wpt_fork_remote):
(WebPlatformTestExporter._wpt_fork_push_url):
(WebPlatformTestExporter._git):
(WebPlatformTestExporter._branch_name):
(WebPlatformTestExporter._public_branch_name):
(WebPlatformTestExporter._wpt_patch):
(WebPlatformTestExporter.has_wpt_changes):
(WebPlatformTestExporter._find_filename):
(WebPlatformTestExporter._is_ignored_file):
(WebPlatformTestExporter._strip_ignored_files_from_diff):
(WebPlatformTestExporter.write_git_patch_file):
(WebPlatformTestExporter._prompt_for_token):
(WebPlatformTestExporter._prompt_for_username):
(WebPlatformTestExporter._ensure_username_and_token):
(WebPlatformTestExporter._validate_and_save_token):
(WebPlatformTestExporter.create_branch_with_patch):
(WebPlatformTestExporter.push_to_wpt_fork):
(WebPlatformTestExporter.make_pull_request):
(WebPlatformTestExporter.delete_local_branch):
(WebPlatformTestExporter.create_upload_remote_if_needed):
(WebPlatformTestExporter.do_export):
(parse_args):
(TestExporter): Deleted.
(TestExporter.init): Deleted.
(TestExporter._ensure_wpt_repository): Deleted.
(TestExporter._fetch_wpt_repository): Deleted.
(TestExporter._ensure_new_branch_name): Deleted.
(TestExporter.download_and_commit_patch): Deleted.
(TestExporter.clean): Deleted.
(TestExporter.create_branch_with_patch): Deleted.
(TestExporter.push_to_wpt_fork): Deleted.
(TestExporter.make_pull_request): Deleted.
(TestExporter.create_wpt_pull_request): Deleted.
(TestExporter.delete_local_branch): Deleted.
(TestExporter.create_git_patch): Deleted.
(TestExporter.create_upload_remote): Deleted.
(TestExporter.do_export): Deleted.

  • Scripts/webkitpy/w3c/test_exporter_unittest.py:

(TestExporterTest.MockGit):
(TestExporterTest.MockGit.create_patch):
(TestExporterTest.test_export):
(TestExporterTest.test_export_with_specific_branch):
(TestExporterTest):
(TestExporterTest.test_export_interactive_mode):
(TestExporterTest.test_export_invalid_token):
(TestExporterTest.test_export_wrong_token):
(TestExporterTest.test_has_wpt_changes):
(TestExporterTest.test_has_no_wpt_changes_for_no_diff):
(TestExporterTest.test_ignore_changes_to_expected_file):

2:15 PM Changeset in webkit [232273] by Caio Lima
  • 6 edits
    8 adds in trunk

[ESNext][BigInt] Implement support for "<" and ">" relational operation
https://bugs.webkit.org/show_bug.cgi?id=185379

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/big-int-greater-than-general.js: Added.
  • stress/big-int-greater-than-jit.js: Added.
  • stress/big-int-greater-than-order-of-evaluation.js: Added.
  • stress/big-int-greater-than-wrapped-values.js: Added.
  • stress/big-int-less-than-general.js: Added.
  • stress/big-int-less-than-jit.js: Added.
  • stress/big-int-less-than-order-of-evaluation.js: Added.
  • stress/big-int-less-than-wrapped-values.js: Added.

Source/JavaScriptCore:

This patch is changing the jsLess` operation to follow the
semantics of Abstract Relational Comparison[1] that supports BigInt.
For that, we create 2 new helper functions bigIntCompareLess and
toPrimitiveNumeric that considers BigInt as a valid type to be
compared.

[1] - https://tc39.github.io/proposal-bigint/#sec-abstract-relational-comparison

  • runtime/JSBigInt.cpp:

(JSC::JSBigInt::unequalSign):
(JSC::JSBigInt::absoluteGreater):
(JSC::JSBigInt::absoluteLess):
(JSC::JSBigInt::compare):
(JSC::JSBigInt::absoluteCompare):

  • runtime/JSBigInt.h:
  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::isPrimitive const):

  • runtime/Operations.h:

(JSC::bigIntCompareLess):
(JSC::toPrimitiveNumeric):
(JSC::jsLess):

1:30 PM Changeset in webkit [232272] by rniwa@webkit.org
  • 5 edits in trunk/Source/WebCore

iOS WK1: Occasional crash in sanitizedMarkupForFragmentInDocument
https://bugs.webkit.org/show_bug.cgi?id=186011

Reviewed by David Kilzer.

The crash was caused by the HTML parser in sanitizedMarkupForFragmentInDocument yielding in the web thread
when _WebThreadLock() sets webThreadShouldYield to true in the main thread.

No new tests. This is occasionally caught by existing tests.

  • editing/markup.cpp:

(WebCore::createPageForSanitizingWebContent): Fixed the bug by making the HTML parser never yield.
Also release-assert that the body is never null here.
(WebCore::sanitizedMarkupForFragmentInDocument): Removed superflous call to WTFMove since appendChild
takes a reference, not a Ref.

  • inspector/InspectorOverlay.cpp:

(WebCore::InspectorOverlay::overlayPage): Deployed the same fix.

  • loader/DocumentWriter.cpp:

(WebCore::DocumentWriter::insertDataSynchronously): Added.

  • loader/DocumentWriter.h:
1:04 PM Changeset in webkit [232271] by Yusuke Suzuki
  • 4 edits in trunk/Source/JavaScriptCore

[Baseline] Merge loading functionalities
https://bugs.webkit.org/show_bug.cgi?id=185907

Reviewed by Saam Barati.

This patch unifies emitXXXLoad functions in 32bit and 64bit.

  • jit/JITInlines.h:

(JSC::JIT::emitDoubleGetByVal):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emitDoubleLoad):
(JSC::JIT::emitContiguousLoad):
(JSC::JIT::emitArrayStorageLoad):
(JSC::JIT::emitIntTypedArrayGetByVal):
(JSC::JIT::emitFloatTypedArrayGetByVal):
Define register usage first, and share the same code in 32bit and 64bit.

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emitSlow_op_put_by_val):
Now C-stack is always enabled in JIT platform and temporary registers increases from 5 to 6 in x86.
We can remove this special handling.

(JSC::JIT::emitContiguousLoad): Deleted.
(JSC::JIT::emitDoubleLoad): Deleted.
(JSC::JIT::emitArrayStorageLoad): Deleted.

12:27 PM Changeset in webkit [232270] by Fujii Hironori
  • 6 edits in trunk/Tools

[Win][MiniBrowser] Move WK1 specific code from Common.cpp to MiniBrowser.cpp
https://bugs.webkit.org/show_bug.cgi?id=186029

Reviewed by Alex Christensen.

This is a sub task of Bug 184770.

  • MiniBrowser/win/Common.cpp:

(ToggleMenuItem): Extracted WK1 specific code to MiniBrowser::setPreference.
(Caches): Call MiniBrowser::updateStatistics instead of updateStatistics.
(AbortProc): Moved to MiniBrowser.cpp.
(getPrinterDC): Ditto.
(initDocStruct): Ditto.
(PrintView): Ditto.
(ToggleMenuFlag): Ditto.
(setWindowText): Ditto.
(updateStatistics): Ditto.

  • MiniBrowser/win/MainWindow.cpp:

(MainWindow::WndProc): Call MiniBrowser::print instead of PrintView.

  • MiniBrowser/win/MiniBrowser.cpp:

(AbortProc): Moved from Common.cpp.
(getPrinterDC): Moved from Common.cpp.
(initDocStruct): Moved from Common.cpp.
(setWindowText): Moved from Common.cpp.
(MiniBrowser::print): Renamed from PrintView of Common.cpp.
(MiniBrowser::updateStatistics): Renamed from updateStatistics of Common.cpp.
(MiniBrowser::setPreference): Extracted from ToggleMenuItem of Common.cpp.

  • MiniBrowser/win/MiniBrowser.h: Add method declarations.
  • MiniBrowser/win/MiniBrowserWebHost.cpp: Removed duplicated IWebFramePtr typedef.
11:56 AM Changeset in webkit [232269] by sbarati@apple.com
  • 13 edits in trunk

JSC should put bmalloc's scavenger into mini mode
https://bugs.webkit.org/show_bug.cgi?id=185988

Reviewed by Michael Saboff.

Source/bmalloc:

We expose an API for putting bmalloc into mini mode. All that means now
is that we'll run the scavenger more aggressively.

  • bmalloc/Scavenger.cpp:

(bmalloc::Scavenger::enableMiniMode):
(bmalloc::Scavenger::threadRunLoop):

  • bmalloc/Scavenger.h:
  • bmalloc/Sizes.h:
  • bmalloc/bmalloc.cpp:

(bmalloc::api::enableMiniMode):

  • bmalloc/bmalloc.h:

Source/JavaScriptCore:

When we InitializeThreading, we'll now enable bmalloc's mini mode
if the VM is in mini mode. This is an 8-10% progression on the footprint
at end score in run-testmem, making it a 4-5% memory score progression.
It's between a 0-1% regression in its time score.

  • runtime/InitializeThreading.cpp:

(JSC::initializeThreading):

Source/WTF:

  • wtf/FastMalloc.cpp:

(WTF::fastEnableMiniMode):

  • wtf/FastMalloc.h:

Tools:

This patch makes it so that we turn off the JIT when running run-testmem
that way we make JSC use its mini mode.

  • Scripts/run-testmem:
11:32 AM Changeset in webkit [232268] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Avoid unnecessary String allocation in isPublicSuffix(const String&)
https://bugs.webkit.org/show_bug.cgi?id=186054

Reviewed by Sam Weinig.

Avoid unnecessary String allocation in isPublicSuffix(const String&) by calling directly
the decodeHostName() overload taking in a NSString*. This overload returns a NSString*,
which is what we need. We would previously call the overloading taking in a String, which
would return a String, which we would have to convert back to a NSString*.

  • platform/mac/PublicSuffixMac.mm:

(WebCore::isPublicSuffix):

11:24 AM Changeset in webkit [232267] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Do even fewer allocations in URL host operations
https://bugs.webkit.org/show_bug.cgi?id=186003

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

  • loader/ResourceLoadStatistics.cpp:

(WebCore::ResourceLoadStatistics::primaryDomain):

  • loader/ResourceLoadStatistics.h:
  • platform/URL.cpp:

(WebCore::URL::hostIsIPAddress):

  • platform/URL.h:
  • platform/mac/URLMac.mm:

(WebCore::URL::hostIsIPAddress):

  • platform/soup/URLSoup.cpp:

(WebCore::URL::hostIsIPAddress):

11:10 AM Changeset in webkit [232266] by jeffm@apple.com
  • 4 edits in trunk/Source/WebKit

Expose additional WKMenuItemIdentifier strings
https://bugs.webkit.org/show_bug.cgi?id=186041

Reviewed by Dan Bernstein.

Expose identifiers for media-related menu items.

  • UIProcess/API/Cocoa/WKMenuItemIdentifiers.mm:

Define new identifiers.

  • UIProcess/API/Cocoa/WKMenuItemIdentifiersPrivate.h:

Declare new identifiers.

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::menuItemIdentifier):
Map to new identifiers.

11:10 AM Changeset in webkit [232265] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

Don't assert on m_actionsStart when setting actions on DFA nodes
https://bugs.webkit.org/show_bug.cgi?id=185979
<rdar://problem/39669458>

Patch by Tadeu Zagallo <Tadeu Zagallo> on 2018-05-29
Reviewed by Geoffrey Garen.

DFANode::setActions is called immediately after the node is created, and once again to set
the actions of catch-all regular expressions (.*) on the root node. That works because
m_actionsStart is initially 0, since the root was the first node to be created, but may fail
after minimizing the DFA, when the root may no longer be the first node, and therefore
m_actionsStart would not be 0, even if there are no actions attached to that node.

Source/WebCore:

Test: http/tests/contentextensions/root-actions.html

  • contentextensions/DFANode.h:

LayoutTests:

  • http/tests/contentextensions/root-actions-expected.txt: Added.
  • http/tests/contentextensions/root-actions.html: Added.
  • http/tests/contentextensions/root-actions.html.json: Added.
10:56 AM Changeset in webkit [232264] by Yusuke Suzuki
  • 2 edits in trunk/Source/WTF

Unreviewed, follow-up after r232244
https://bugs.webkit.org/show_bug.cgi?id=186023

_BitScanReverse64 is available only in X86_64 and ARM.

  • wtf/MathExtras.h:

(WTF::clz64):

10:31 AM Changeset in webkit [232263] by ggaren@apple.com
  • 5 edits in trunk/Source/WebKit

Removed some unused WebSQL trackers
https://bugs.webkit.org/show_bug.cgi?id=186026

Reviewed by Dan Bernstein.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):

  • NetworkProcess/NetworkProcess.h:
  • WebProcess/WebProcess.cpp:

(WebKit::m_nonVisibleProcessCleanupTimer):
(WebKit::m_webSQLiteDatabaseTracker): Deleted.

  • WebProcess/WebProcess.h:
10:28 AM Changeset in webkit [232262] by ggaren@apple.com
  • 2 edits in trunk/Source/bmalloc

Fixed the bmalloc build
https://bugs.webkit.org/show_bug.cgi?id=186025

Reviewed by Sam Weinig.

  • bmalloc.xcodeproj/project.pbxproj: Link Foundation because the

gigacage check needs it.

9:56 AM Changeset in webkit [232261] by caitp@igalia.com
  • 4 edits
    1 copy in trunk

[JSC] Fix Array.prototype.concat fast case when single argument is Proxy
https://bugs.webkit.org/show_bug.cgi?id=184267

Reviewed by Saam Barati.

JSTests:

  • stress/array-concat-fast-spread-proxy.js: Copied from JSTests/stress/array-concat-spread-proxy.js.

(arrayEq):
(catch):

  • stress/array-concat-spread-proxy.js:

Source/JavaScriptCore:

Before this patch, the fast case for Array.prototype.concat was taken if
there was a single argument passed to the function, which is either a
non-JSCell, or an ObjectType JSCell not marked as concat-spreadable.
This incorrectly prevented Proxy objects from being spread when
they were the only argument passed to A.prototype.concat(), violating ECMA-262.

  • builtins/ArrayPrototype.js:

(concat):

9:50 AM Changeset in webkit [232260] by pvollan@apple.com
  • 6 edits in trunk/Source/WebKit

Follow-up fixes after r228907.
https://bugs.webkit.org/show_bug.cgi?id=183338

Reviewed by Brent Fulgham.

Add screen properties to the WebProcess creation parameters, instead of sending
them in a message to the WebProcess just after starting it up.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::platformInitializeWebProcess):

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::initializeNewWebProcess):

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

9:19 AM Changeset in webkit [232259] by n_wang@apple.com
  • 8 edits in trunk

AX: setValue on contenteditable should preserve whitespace
https://bugs.webkit.org/show_bug.cgi?id=185897

Reviewed by Ryosuke Niwa.

Source/WebCore:

We should mimic typing when setting value to a contenteditable from accessibility
instead of mutating the DOM by using setInnerText.

Updated tests to cover this change.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::setValue):

LayoutTests:

  • accessibility/mac/AOM-event-accessiblesetvalue-expected.txt:
  • accessibility/mac/AOM-event-accessiblesetvalue.html:
  • accessibility/mac/set-value-editable-types-expected.txt:
  • accessibility/mac/set-value-editable-types.html:
9:12 AM Changeset in webkit [232258] by sihui_liu@apple.com
  • 4 edits in trunk

Unable to remove IndexedDB Databases with Cocoa API removeDataOfTypes
https://bugs.webkit.org/show_bug.cgi?id=185835
<rdar://problem/39142257>

Reviewed by Chris Dumez.

Source/WebKit:

Fix a wrong if condition: databases should be closed and deleted if websiteDataTypes contains
WebsiteDataType::IndexedDBDatabases.

  • StorageProcess/StorageProcess.cpp:

(WebKit::StorageProcess::deleteWebsiteDataForOrigins):

Tools:

Add API test coverage.

  • TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:

(TEST):

8:19 AM Changeset in webkit [232257] by Alan Bujtas
  • 7 edits in trunk/Source/WebCore

[LFC] Miscellaneous fixes to ensure no assertion in LayoutContext::layout
https://bugs.webkit.org/show_bug.cgi?id=186052

Reviewed by Antti Koivisto.

With this patch, LayoutContext::layout() does not assert on <html><body><div></div></body></html> anymore.

  • layout/LayoutContext.cpp:

(WebCore::Layout::LayoutContext::initializeRoot): New context root is always a layout root.

  • layout/LayoutContext.h:
  • layout/Verification.cpp:

(WebCore::Layout::outputMismatchingBoxInformationIfNeeded):

  • layout/blockformatting/BlockFormattingContext.cpp:

(WebCore::Layout::BlockFormattingContext::layout const): we need computed margin/border/padding for width computation

  • layout/displaytree/DisplayBox.cpp: Add clone() method to be able to carry over the 'hasValid*' bits.

(WebCore::Display::Box::Style::Style):
(WebCore::Display::Box::borderBox const):
(WebCore::Display::Box::contentBox const):

  • layout/displaytree/DisplayBox.h:

(WebCore::Display::Box::Rect::operator LayoutRect const):
(WebCore::Display::Box::setSize):
(WebCore::Display::Box::setHasValidMargin):
(WebCore::Display::Box::setHasValidBorder):
(WebCore::Display::Box::setHasValidPadding):
(WebCore::Display::Box::Rect::setHasValidPosition):
(WebCore::Display::Box::Rect::setHasValidSize):
(WebCore::Display::Box::Rect::setSize):
(WebCore::Display::Box::Rect::clone const):
(WebCore::Display::Box::setMargin):
(WebCore::Display::Box::setBorder):
(WebCore::Display::Box::setPadding):
(WebCore::Display::Box::Rect::Rect): Deleted.

8:00 AM Changeset in webkit [232256] by Wenson Hsieh
  • 4 edits
    2 adds in trunk

[Extra zoom mode] "Significant area painted" rendering progress event is rarely fired
https://bugs.webkit.org/show_bug.cgi?id=186042
<rdar://problem/40604182>

Reviewed by Tim Horton.

Source/WebCore:

Makes a minor tweak to the size of the relevant view rect in extra zoom mode, such that it's no wider than the
visible content rect. Previously, the width of this rect has hard-coded to a value optimized for macOS (980),
which makes it difficult for content laid out at device width in extra zoom mode to cover a significant portion
of the relevant view rect.

Test: RenderingProgressTests.FirstPaintWithSignificantArea

  • page/Page.cpp:

(WebCore::relevantViewRect):

Tools:

Adds a new API test to check that the "significant area painting" rendering milestone is dispatched when a
significant portion of the page has been painted before document load is finished.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitCocoa/paint-significant-area-milestone.html: Added.
  • TestWebKitAPI/Tests/ios/RenderingProgressTests.mm: Added.

(-[MissingResourceSchemeHandler webView:stopURLSchemeTask:]):
(-[MissingResourceSchemeHandler webView:startURLSchemeTask:]):
(-[RenderingProgressHandler initWithHandler:]):
(-[RenderingProgressHandler _webView:renderingProgressDidChange:]):
(TEST):

4:59 AM Changeset in webkit [232255] by graouts@webkit.org
  • 19 edits in trunk

[Web Animations] Handle relative length units
https://bugs.webkit.org/show_bug.cgi?id=186047

Reviewed by Dean Jackson.

LayoutTests/imported/w3c:

Record WPT test progressions.

  • web-platform-tests/web-animations/animation-model/keyframe-effects/effect-value-context-expected.txt:

Source/WebCore:

In order to correctly handle relative units, such as "em", "vw" and "vh", we need to do two things.

First, because we need to apply the cascade to correctly compute relative lengths, we need to delay the computation of
"blending keyframes" to when we have both keyframes data and a valid target. This also means that we need to reset blending
keyframes when the target changes. As a result, old call sites of updateBlendingKeyframes() have been replaced by a call to
m_blendingKeyframes.clear() and the method now gets called as part of apply() with the RenderStyle of the targeted element
as a parameter.

Second, and as a result of the first change, we need to update the accelerated animation state based on animation
progress rather than when calling specific methods, such as Animation.play() and Animation.pause(), since blending
keyframes may not be available at those more specific call sites. We now have a new updateAcceleratedAnimationState()
method that gets called as part of apply(). We also rename animationPlayStateDidChange() to animationSuspensionStateDidChange()
since this method was specific to suspension and had a confusing name.

  • animation/AnimationEffectReadOnly.h: Rename animationPlayStateDidChange() to animationSuspensionStateDidChange().
  • animation/KeyframeEffectReadOnly.cpp:

(WebCore::KeyframeEffectReadOnly::getKeyframes): Fix a crash that revealed itself after other changes in this patch. We would later
call into ComputedStyleExtractor::animationSuspensionStateDidChange() and this would yield an assertion because we'd call potentially
call it with a custom CSS property.
(WebCore::KeyframeEffectReadOnly::processKeyframes): Reset blending keyframes instead of calling updateBlendingKeyframes() since
blending keyframes is now performed asynchronously upon style resolution.
(WebCore::KeyframeEffectReadOnly::updateBlendingKeyframes): Take the target's RenderStyle as a parameter and use it to reset the
associated StyleResolver's state, just like we do in StyleResolver::keyframeStylesForAnimation(), so that the CSS cascade is correctly
accounted for when computing values using relative length units. Since blending keyframes can now be computed several times for a
given set of keyframes, since the effect's target may change, we also need to create a copy of the MutableStyleProperties to pass
to StyleRuleKeyframe::create().
(WebCore::KeyframeEffectReadOnly::setTarget): Reset blending keyframes instead of calling updateBlendingKeyframes() since
blending keyframes is now performed asynchronously upon style resolution.
(WebCore::KeyframeEffectReadOnly::apply): Update blending keyframes and the accelerated animation state.
(WebCore::KeyframeEffectReadOnly::getAnimatedStyle): Make sure we have blending keyframes with a call to updateBlendingKeyframes()
in case the animation hasn't naturally progressed when this method is called.
(WebCore::KeyframeEffectReadOnly::setAnimatedPropertiesInStyle): Make sure we have blending keyframes with a call to
updateBlendingKeyframes() in case the animation hasn't naturally progressed when this method is called.
(WebCore::KeyframeEffectReadOnly::updateAcceleratedAnimationState): Account for the animation's local time and play state to update
the accelerated animation state.
(WebCore::KeyframeEffectReadOnly::addPendingAcceleratedAction): Record the last accelerated action in a member variable which we can
use to determine if we're running accelerated accounting for uncommited changes.
(WebCore::KeyframeEffectReadOnly::animationDidSeek): Only record an AcceleratedAction::Seek action if we're already running accelerated.
(WebCore::KeyframeEffectReadOnly::animationSuspensionStateDidChange): Only record an AcceleratedAction::Pause or AcceleratedAction::Play
action if we're already running accelerated.
(WebCore::KeyframeEffectReadOnly::applyPendingAcceleratedActions): Ensure we clone and clear the list of accelerated actions and check that
we have any cloned actions before proceeding any further. Then we can stop accounting for m_startedAccelerated since the list of accelerated
actions already account for animation state changes.
(WebCore::KeyframeEffectReadOnly::animationPlayStateDidChange): Deleted.

  • animation/KeyframeEffectReadOnly.h:

(WebCore::KeyframeEffectReadOnly::isRunningAccelerated const): Account for the m_lastRecordedAcceleratedAction to identify whether we're running.

  • animation/WebAnimation.cpp:

(WebCore::WebAnimation::play): Stop calling animationPlayStateDidChange() directly since the accelerated animation state is now updated when
the animation's effect is applied.
(WebCore::WebAnimation::pause): Stop calling animationPlayStateDidChange() directly since the accelerated animation state is now updated when
the animation's effect is applied.
(WebCore::WebAnimation::resolve): Make sure we update the finished state prior to applying the animation's effect since the play state can
change when updating the finished state and KeyframeEffectReadOnly::updateAcceleratedAnimationState(), which is called when calling into
KeyframeEffectReadOnly::apply(), relies on it to correctly update the accelerated animation state.
(WebCore::WebAnimation::setSuspended): Rename animationPlayStateDidChange() to animationSuspensionStateDidChange().

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::setNewStateWithElement): Add a new public method to reset a StyleResolver's state such that we can call it when creating
blending keyframes for JS-originated animations just like we do when creating blending keyframes for CSS Animations in keyframeStylesForAnimation().
(WebCore::StyleResolver::keyframeStylesForAnimation): Use the new setNewStateWithElement() method.

  • css/StyleResolver.h:

LayoutTests:

Record WPT test progressions and updated failures.

  • platform/ios/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
  • platform/ios/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
  • platform/ios/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
  • platform/mac/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
  • platform/mac/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
  • platform/mac/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
  • platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
  • platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
  • platform/mac-sierra/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
1:45 AM Changeset in webkit [232254] by commit-queue@webkit.org
  • 5 edits in trunk

[GStreamer] Update "qtdemux: Clarify field name about stream-encryption-system" patch
https://bugs.webkit.org/show_bug.cgi?id=186040

Source/WebCore:

Patch by Thibault Saunier <tsaunier@igalia.com> on 2018-05-29
Reviewed by Xabier Rodriguez-Calvar.

s/avalaible-stream-encryption-systems/available-stream-encryption-systems/g

Tests: imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-*

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::extractEventsAndSystemsFromMessage):

Tools:

The patch we merge contained a type and was merged in upstream GStreamer fixing that
(s/avalaible/available/).

Patch by Thibault Saunier <tsaunier@igalia.com> on 2018-05-29
Reviewed by Xabier Rodriguez-Calvar.

  • gstreamer/patches/gst-plugins-good-0003-qtdemux-Clarify-field-name-about-stream-encryption-s.patch:

May 28, 2018:

11:43 PM Changeset in webkit [232253] by Yusuke Suzuki
  • 3 edits in trunk/Source/JavaScriptCore

[JSC] JSBigInt::digitDiv has undefined behavior which causes test failures
https://bugs.webkit.org/show_bug.cgi?id=186022

Reviewed by Darin Adler.

digitDiv performs Value64Bit >> 64 / Value32Bit >> 32, which is undefined behavior. And zero mask
creation has an issue (s should be casted to signed one before negating). They cause test failures
in non x86 / x86_64 environments. x86 and x86_64 work well since they have a fast path written
in asm.

This patch fixes digitDiv by carefully avoiding undefined behaviors. We mask the left value of the
rshift with digitBits - 1, which makes digitBits 0 while it keeps 0 <= n < digitBits values.
This makes the target rshift well-defined in C++. While produced value by the rshift covers 0 <= s < 64 (32
in 32bit envirnoment) cases, this rshift does not shift if s is 0. sZeroMask clears the value
if s is 0, so that s == 0 case is also covered. Note that s == 64 never happens since divisor
is never 0 here. We add assertion for that. We also fixes sZeroMask calculation.

This patch also fixes naming convention for constant values.

  • runtime/JSBigInt.cpp:

(JSC::JSBigInt::digitMul):
(JSC::JSBigInt::digitDiv):

  • runtime/JSBigInt.h:
8:46 PM Changeset in webkit [232252] by sihui_liu@apple.com
  • 2 edits in trunk/Tools

Add an API test to check process privilege when using Cookie API
https://bugs.webkit.org/show_bug.cgi?id=185406

Reviewed by Geoffrey Garen.

Add API test coverage.

  • TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:

(TEST):

7:40 PM Changeset in webkit [232251] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix.

  • layout/displaytree/DisplayBox.h:

(WebCore::Display::Box::Rect::operator LayoutRect const):

1:39 PM Changeset in webkit [232250] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

[LFC] Add Rect interface to Display::Box
https://bugs.webkit.org/show_bug.cgi?id=186019

Reviewed by Antti Koivisto.

Having a dedicated Rect class and moving the geometry invalidation to it enables us to call
displayBox.contentBox().left() even when the widht/height are not computed yet.
Also having Rect with top/left/bottom/right interface is more aligned with the rest of the layout code than x/y/maxX/maxY.

  • layout/FormattingContextGeometry.cpp:

(WebCore::Layout::contentHeightForFormattingContextRoot):

  • layout/blockformatting/BlockFormattingContextGeometry.cpp:

(WebCore::Layout::BlockFormattingContext::Geometry::staticPosition):

  • layout/displaytree/DisplayBox.cpp:

(WebCore::Display::Box::marginBox const):
(WebCore::Display::Box::borderBox const):
(WebCore::Display::Box::paddingBox const):
(WebCore::Display::Box::contentBox const):

  • layout/displaytree/DisplayBox.h:

(WebCore::Display::Box::Rect::invalidateTop):
(WebCore::Display::Box::Rect::invalidateLeft):
(WebCore::Display::Box::Rect::invalidateWidth):
(WebCore::Display::Box::Rect::invalidateHeight):
(WebCore::Display::Box::Rect::hasValidPosition const):
(WebCore::Display::Box::Rect::hasValidSize const):
(WebCore::Display::Box::Rect::hasValidGeometry const):
(WebCore::Display::Box::rect const):
(WebCore::Display::Box::top const):
(WebCore::Display::Box::left const):
(WebCore::Display::Box::bottom const):
(WebCore::Display::Box::right const):
(WebCore::Display::Box::topLeft const):
(WebCore::Display::Box::bottomRight const):
(WebCore::Display::Box::size const):
(WebCore::Display::Box::width const):
(WebCore::Display::Box::height const):
(WebCore::Display::Box::setTopLeft):
(WebCore::Display::Box::setTop):
(WebCore::Display::Box::setLeft):
(WebCore::Display::Box::setWidth):
(WebCore::Display::Box::setHeight):
(WebCore::Display::Box::Rect::invalidatePosition):
(WebCore::Display::Box::Rect::setHasValidPosition):
(WebCore::Display::Box::Rect::Rect):
(WebCore::Display::Box::Rect::top const):
(WebCore::Display::Box::Rect::left const):
(WebCore::Display::Box::Rect::bottom const):
(WebCore::Display::Box::Rect::right const):
(WebCore::Display::Box::Rect::topLeft const):
(WebCore::Display::Box::Rect::bottomRight const):
(WebCore::Display::Box::Rect::size const):
(WebCore::Display::Box::Rect::width const):
(WebCore::Display::Box::Rect::height const):
(WebCore::Display::Box::Rect::setTopLeft):
(WebCore::Display::Box::Rect::setTop):
(WebCore::Display::Box::Rect::setLeft):
(WebCore::Display::Box::Rect::setWidth):
(WebCore::Display::Box::Rect::setHeight):
(WebCore::Display::Box::Rect::shiftLeftTo):
(WebCore::Display::Box::Rect::shiftRightTo):
(WebCore::Display::Box::Rect::shiftTopTo):
(WebCore::Display::Box::Rect::shiftBottomTo):
(WebCore::Display::Box::Rect::expand):
(WebCore::Display::Box::invalidateTop): Deleted.
(WebCore::Display::Box::invalidateLeft): Deleted.
(WebCore::Display::Box::invalidateWidth): Deleted.
(WebCore::Display::Box::invalidateHeight): Deleted.
(WebCore::Display::Box::hasValidPosition const): Deleted.
(WebCore::Display::Box::hasValidSize const): Deleted.
(WebCore::Display::Box::hasValidGeometry const): Deleted.
(WebCore::Display::Box::invalidatePosition): Deleted.
(WebCore::Display::Box::setHasValidPosition): Deleted.

11:56 AM Changeset in webkit [232249] by Alan Bujtas
  • 4 edits in trunk/Source/WebCore

[LFC] Add formatting context testing codepath in FrameViewLayoutContext
https://bugs.webkit.org/show_bug.cgi?id=186036

Reviewed by Antti Koivisto.

This is to verify the formatting context layout correctness.

  • layout/LayoutContext.cpp:

(WebCore::Layout::LayoutContext::LayoutContext):
(WebCore::Layout::LayoutContext::initializeRoot):

  • layout/LayoutContext.h:

(WebCore::Layout::LayoutContext::displayBoxForLayoutBox const):

  • page/FrameViewLayoutContext.cpp:

(WebCore::layoutUsingFormattingContext):
(WebCore::FrameViewLayoutContext::layout):

10:55 AM Changeset in webkit [232248] by Alan Bujtas
  • 4 edits
    1 add in trunk/Source/WebCore

[LFC] Add layout tree verification.
https://bugs.webkit.org/show_bug.cgi?id=186018

Reviewed by Antti Koivisto.

Compare layout and render tree geometry and output the mismtaching rectangles.

  • Sources.txt:
  • WebCore.xcodeproj/project.pbxproj: Add missing headers and make then private.
  • layout/LayoutContext.h:
  • layout/Verification.cpp: Added.

(WebCore::Layout::outputMismatchedBoxInformationIfNeeded):
(WebCore::Layout::verifySubtree):
(WebCore::Layout::LayoutContext::verifyAndOutputLayoutTree const):

9:03 AM Changeset in webkit [232247] by Claudio Saavedra
  • 3 edits in trunk/LayoutTests

[GTK][WPE] AppCache test gardening

Some appcache tests were flaky due to console output, see
https://bugs.webkit.org/show_bug.cgi?id=185431 for more info.
Fixing those by dumping the output to stderr instead.

At the same time, clean up the expectations for appcache tests,
many were now passing, so several old bugs got closed now.

Unreviewed gardening.

  • platform/gtk/TestExpectations:
  • platform/wpe/TestExpectations:
8:20 AM Changeset in webkit [232246] by commit-queue@webkit.org
  • 55 edits in trunk/Source

Modernize SVGRenderStyleDefs.h
https://bugs.webkit.org/show_bug.cgi?id=186024

Patch by Sam Weinig <sam@webkit.org> on 2018-05-28
Reviewed by Daniel Bates.

Source/WebCore:

Modernized the set of enums in SVGRenderStyleDefs.h and WindRule.h by:

  • Converting them to enum classes
  • Renaming them to remove unnecessary prefix 'E's
  • Renaming values to take advantage of enum class scoping (e.g. StyleDifferenceEqual -> StyleDifference::Equal)
  • Renaming to match modern conventions (e.g BNONE -> None)

Modernizes the following enums:

SVGPaintType
BaselineShift (renamed from EBaselineShift)
TextAnchor (renamed from ETextAnchor)
ColorInterpolation (renamed from EColorInterpolation)
ColorRendering (renamed from EColorRendering)
ShapeRendering (renamed from EShapeRendering)
GlyphOrientation (renamed from EGlyphOrientation)
AlignmentBaseline (renamed from EAlignmentBaseline)
DominantBaseline (renamed from EDominantBaseline)
VectorEffect (renamed from EVectorEffect)
BufferedRendering (renamed from EBufferedRendering)
MaskType (renamed from EMaskType)
WindRule

  • css/CSSBasicShapes.cpp:

(WebCore::buildPathString):
(WebCore::buildPolygonString):

  • css/CSSBasicShapes.h:
  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator WindRule const):
(WebCore::CSSPrimitiveValue::operator AlignmentBaseline const):
(WebCore::CSSPrimitiveValue::operator BufferedRendering const):
(WebCore::CSSPrimitiveValue::operator ColorInterpolation const):
(WebCore::CSSPrimitiveValue::operator ColorRendering const):
(WebCore::CSSPrimitiveValue::operator DominantBaseline const):
(WebCore::CSSPrimitiveValue::operator ShapeRendering const):
(WebCore::CSSPrimitiveValue::operator TextAnchor const):
(WebCore::CSSPrimitiveValue::operator VectorEffect const):
(WebCore::CSSPrimitiveValue::operator MaskType const):
(WebCore::CSSPrimitiveValue::operator EAlignmentBaseline const): Deleted.
(WebCore::CSSPrimitiveValue::operator EBufferedRendering const): Deleted.
(WebCore::CSSPrimitiveValue::operator EColorInterpolation const): Deleted.
(WebCore::CSSPrimitiveValue::operator EColorRendering const): Deleted.
(WebCore::CSSPrimitiveValue::operator EDominantBaseline const): Deleted.
(WebCore::CSSPrimitiveValue::operator EShapeRendering const): Deleted.
(WebCore::CSSPrimitiveValue::operator ETextAnchor const): Deleted.
(WebCore::CSSPrimitiveValue::operator EVectorEffect const): Deleted.
(WebCore::CSSPrimitiveValue::operator EMaskType const): Deleted.

  • css/SVGCSSComputedStyleDeclaration.cpp:

(WebCore::glyphOrientationToCSSPrimitiveValue):
(WebCore::ComputedStyleExtractor::adjustSVGPaintForCurrentColor const):
(WebCore::ComputedStyleExtractor::svgPropertyValue):

  • css/StyleBuilderConverter.h:

(WebCore::StyleBuilderConverter::convertGlyphOrientation):
(WebCore::StyleBuilderConverter::convertGlyphOrientationOrAuto):

  • css/StyleBuilderCustom.h:

(WebCore::StyleBuilderCustom::applyValueBaselineShift):
(WebCore::StyleBuilderCustom::applyValueFill):
(WebCore::StyleBuilderCustom::applyValueStroke):

  • css/parser/CSSPropertyParser.cpp:

(WebCore::consumeBasicShapePolygon):
(WebCore::consumeBasicShapePath):

  • html/canvas/CanvasRenderingContext2DBase.cpp:

(WebCore::toWindRule):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):

  • platform/graphics/FloatPolygon.cpp:

(WebCore::FloatPolygon::contains const):

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::fillRectWithRoundedHole):

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::shapeLayerWindRule const):

  • platform/graphics/GraphicsLayer.h:
  • platform/graphics/GraphicsTypes.cpp:

(WebCore::operator<<):

  • platform/graphics/Path.h:
  • platform/graphics/ShadowBlur.cpp:

(WebCore::ShadowBlur::drawInsetShadow):
(WebCore::ShadowBlur::drawInsetShadowWithoutTiling):
(WebCore::ShadowBlur::drawInsetShadowWithTiling):

  • platform/graphics/WindRule.h:

(): Deleted.

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

(PlatformCALayerCocoa::shapeWindRule const):
(PlatformCALayerCocoa::setShapeWindRule):

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::calculateDrawingMode):
(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::fillRectWithRoundedHole):
(WebCore::GraphicsContext::clipPath):

  • platform/graphics/cg/PathCG.cpp:

(WebCore::Path::contains const):

  • platform/mock/MockRealtimeVideoSource.cpp:

(WebCore::MockRealtimeVideoSource::drawAnimation):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::buildReferenceFilter):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintBorder):
(WebCore::RenderBoxModelObject::clipBorderSidePolygon):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::paintOutline):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::computeClipPath const):

  • rendering/style/BasicShapes.h:

(WebCore::BasicShape::windRule const):

  • rendering/style/RenderStyle.h:

(WebCore::RenderStyle::fillPaintType const):
(WebCore::RenderStyle::setFillPaintColor):
(WebCore::RenderStyle::strokePaintType const):
(WebCore::RenderStyle::setStrokePaintColor):

  • rendering/style/SVGRenderStyle.h:

(WebCore::SVGRenderStyle::initialAlignmentBaseline):
(WebCore::SVGRenderStyle::initialDominantBaseline):
(WebCore::SVGRenderStyle::initialBaselineShift):
(WebCore::SVGRenderStyle::initialVectorEffect):
(WebCore::SVGRenderStyle::initialBufferedRendering):
(WebCore::SVGRenderStyle::initialClipRule):
(WebCore::SVGRenderStyle::initialColorInterpolation):
(WebCore::SVGRenderStyle::initialColorInterpolationFilters):
(WebCore::SVGRenderStyle::initialColorRendering):
(WebCore::SVGRenderStyle::initialFillRule):
(WebCore::SVGRenderStyle::initialShapeRendering):
(WebCore::SVGRenderStyle::initialTextAnchor):
(WebCore::SVGRenderStyle::initialGlyphOrientationHorizontal):
(WebCore::SVGRenderStyle::initialGlyphOrientationVertical):
(WebCore::SVGRenderStyle::initialFillPaintType):
(WebCore::SVGRenderStyle::initialStrokePaintType):
(WebCore::SVGRenderStyle::initialMaskType):
(WebCore::SVGRenderStyle::setAlignmentBaseline):
(WebCore::SVGRenderStyle::setDominantBaseline):
(WebCore::SVGRenderStyle::setBaselineShift):
(WebCore::SVGRenderStyle::setVectorEffect):
(WebCore::SVGRenderStyle::setBufferedRendering):
(WebCore::SVGRenderStyle::setClipRule):
(WebCore::SVGRenderStyle::setColorInterpolation):
(WebCore::SVGRenderStyle::setColorInterpolationFilters):
(WebCore::SVGRenderStyle::setColorRendering):
(WebCore::SVGRenderStyle::setFillRule):
(WebCore::SVGRenderStyle::setShapeRendering):
(WebCore::SVGRenderStyle::setTextAnchor):
(WebCore::SVGRenderStyle::setGlyphOrientationHorizontal):
(WebCore::SVGRenderStyle::setGlyphOrientationVertical):
(WebCore::SVGRenderStyle::setMaskType):
(WebCore::SVGRenderStyle::alignmentBaseline const):
(WebCore::SVGRenderStyle::dominantBaseline const):
(WebCore::SVGRenderStyle::baselineShift const):
(WebCore::SVGRenderStyle::vectorEffect const):
(WebCore::SVGRenderStyle::bufferedRendering const):
(WebCore::SVGRenderStyle::clipRule const):
(WebCore::SVGRenderStyle::colorInterpolation const):
(WebCore::SVGRenderStyle::colorInterpolationFilters const):
(WebCore::SVGRenderStyle::colorRendering const):
(WebCore::SVGRenderStyle::fillRule const):
(WebCore::SVGRenderStyle::shapeRendering const):
(WebCore::SVGRenderStyle::textAnchor const):
(WebCore::SVGRenderStyle::glyphOrientationHorizontal const):
(WebCore::SVGRenderStyle::glyphOrientationVertical const):
(WebCore::SVGRenderStyle::fillPaintType const):
(WebCore::SVGRenderStyle::strokePaintType const):
(WebCore::SVGRenderStyle::maskType const):
(WebCore::SVGRenderStyle::visitedLinkFillPaintType const):
(WebCore::SVGRenderStyle::visitedLinkStrokePaintType const):
(WebCore::SVGRenderStyle::hasStroke const):
(WebCore::SVGRenderStyle::hasFill const):
(WebCore::SVGRenderStyle::setBitDefaults):

  • rendering/style/SVGRenderStyleDefs.h:

(WebCore::StyleFillData::create):
(WebCore::StyleFillData::operator!= const):
(WebCore::StyleStrokeData::create):
(WebCore::StyleStrokeData::operator!= const):
(WebCore::StyleStopData::create):
(WebCore::StyleStopData::operator!= const):
(WebCore::StyleTextData::create):
(WebCore::StyleTextData::operator!= const):
(WebCore::StyleMiscData::create):
(WebCore::StyleMiscData::operator!= const):
(WebCore::StyleShadowSVGData::create):
(WebCore::StyleShadowSVGData::operator!= const):
(WebCore::StyleResourceData::create):
(WebCore::StyleResourceData::operator!= const):
(WebCore::StyleInheritedResourceData::create):
(WebCore::StyleInheritedResourceData::operator!= const):
(WebCore::StyleLayoutData::create):
(WebCore::StyleLayoutData::operator!= const):
(): Deleted.

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::paint):

  • rendering/svg/RenderSVGRect.cpp:

(WebCore::RenderSVGRect::updateShapeFromElement):

  • rendering/svg/RenderSVGResource.cpp:

(WebCore::requestPaintingResource):

  • rendering/svg/RenderSVGResourceClipper.cpp:

(WebCore::RenderSVGResourceClipper::pathOnlyClipping):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::buildPrimitives const):

  • rendering/svg/RenderSVGResourceGradient.cpp:

(WebCore::RenderSVGResourceGradient::applyResource):

  • rendering/svg/RenderSVGResourceMasker.cpp:

(WebCore::RenderSVGResourceMasker::applyResource):
(WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):

  • rendering/svg/RenderSVGResourcePattern.cpp:

(WebCore::RenderSVGResourcePattern::applyResource):

  • rendering/svg/RenderSVGShape.cpp:

(WebCore::RenderSVGShape::paint):

  • rendering/svg/RenderSVGShape.h:

(WebCore::RenderSVGShape::hasNonScalingStroke const):

  • rendering/svg/SVGRenderTreeAsText.cpp:

(WebCore::writeStyle):
(WebCore::writeSVGInlineTextBox):

  • rendering/svg/SVGResources.cpp:

(WebCore::paintingResourceFromSVGPaint):

  • rendering/svg/SVGTextChunk.cpp:

(WebCore::SVGTextChunk::SVGTextChunk):

  • rendering/svg/SVGTextLayoutEngineBaseline.cpp:

(WebCore::SVGTextLayoutEngineBaseline::calculateBaselineShift const):
(WebCore::SVGTextLayoutEngineBaseline::dominantBaselineToAlignmentBaseline const):
(WebCore::SVGTextLayoutEngineBaseline::calculateAlignmentBaselineShift const):
(WebCore::SVGTextLayoutEngineBaseline::calculateGlyphOrientationAngle const):

  • rendering/svg/SVGTextLayoutEngineBaseline.h:

Source/WebKit:

  • Shared/RemoteLayerTree/RemoteLayerTreePropertyApplier.mm:

(WebKit::applyPropertiesToLayer):

  • Shared/RemoteLayerTree/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
Update for new enum names.

6:25 AM Changeset in webkit [232245] by Claudio Saavedra
  • 3 edits in trunk/LayoutTests

[GTK][WPE] transitions/interrupted-transition-hardware.html failing

Unreviewed gardening, image-only failure.

  • platform/gtk/TestExpectations:
  • platform/wpe/TestExpectations:
5:26 AM Changeset in webkit [232244] by Yusuke Suzuki
  • 4 edits in trunk/Source

[WTF] Add clz32 / clz64 for MSVC
https://bugs.webkit.org/show_bug.cgi?id=186023

Reviewed by Daniel Bates.

Source/JavaScriptCore:

Move clz32 and clz64 to WTF.

  • runtime/MathCommon.h:

(JSC::clz32): Deleted.
(JSC::clz64): Deleted.

Source/WTF:

This patch adds efficient implementations of clz32 and clz64 for MSVC.
While MSVC has _lzcnt intrinsic, it is only valid if the CPU has lzcnt instruction.
Instead of checking cpuid here, we just use _BitScanReverse and _BitScanReverse64.

  • wtf/MathExtras.h:

(WTF::clz32):
(WTF::clz64):

3:57 AM Changeset in webkit [232243] by Carlos Garcia Campos
  • 1 copy in releases/WebKitGTK/webkit-2.21.3

WebKitGTK+ 2.21.3

3:56 AM Changeset in webkit [232242] by Carlos Garcia Campos
  • 4 edits in trunk

Unreviewed. Update OptionsGTK.cmake and NEWS for 2.21.3 release.

.:

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

Source/WebKit:

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

[Web Animations] Test webanimations/css-animations.html is crashing
https://bugs.webkit.org/show_bug.cgi?id=186031

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2018-05-28
Reviewed by Antoine Quint.

This is another case of std::optional value being used while it's nullopt, I guess this started to fail when we
stopped using the WTF implementation of std::optional. The problem is that we try to get the current iteration
of a declarative animation when the active time is unresolved.

  • animation/DeclarativeAnimation.cpp:

(WebCore::DeclarativeAnimation::invalidateDOMEvents): Use value_or(0) instead of value() to get the current
iteration of the effect.

1:18 AM Changeset in webkit [232240] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk

[GStreamer] Handle changes in the "drm-preferred-decryption-system-id" NEED_CONTEXT message.
https://bugs.webkit.org/show_bug.cgi?id=185948

Patch by Thibault Saunier <tsaunier@igalia.com> on 2018-05-28
Reviewed by Xabier Rodriguez-Calvar.

Source/WebCore:

  • The "stream-encryption-systems" field of the "drm-preferred-decryption-system-id" query was renamed to "avalaible-stream-encryption-systems"
  • It can now be NULL, meaning there is no decryptor avalaible.

Tests: imported/w3c/web-platform-tests/encrypted-media/clearkey-mp4-*

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::extractEventsAndSystemsFromMessage): Handle NULL value for "avalaible-stream-encryption-systems",
moved some code to make the order of the Arrays in the pair clearer.

Tools:

When the patch introducing gst_protection_filter_systems_by_available_decryptors was merged, we changed sensibly its behaviour
concerning the way empty results is represented (now returning NULL instead of an array of 1(NULL) element) and this change was not
properly taken into account in the qtdemux patch that uses it and got upstreamed. Those 3 new patches fixe that and change the
NEED_CONTEXT field names to clarify the meaning of "stream-encryption-systems".

  • gstreamer/jhbuild.modules:
  • gstreamer/patches/gst-plugins-good-0001-qtdemux-Do-not-run-the-preferred-decryptor-context-q.patch: Added. Merged upstream as 3e063703b3a51b8aaa7f75f36c4660c583a60e93
  • gstreamer/patches/gst-plugins-good-0002-qtdemux-Do-not-unref-a-NULL-stream_tags.patch: Added. Merged upstream as 43a540b1cd9f162d3dae5d50e36703dfaf558a3e
  • gstreamer/patches/gst-plugins-good-0003-qtdemux-Clarify-field-name-about-stream-encryption-s.patch: Added.
Note: See TracTimeline for information about the timeline view.