⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Mar 14, 2018:

10:54 PM Changeset in webkit [229620] by webkit@devinrousso.com
  • 4 edits in trunk

Web Inspector: Canvas: a recording initiated by the user should be shown immediately on completion
https://bugs.webkit.org/show_bug.cgi?id=183647
<rdar://problem/38479187>

Reviewed by Matt Baker.

Source/WebInspectorUI:

When recordings are initiated via console.record, we don't want to automatically show the
recording after it's payload is sent to the frontend. We determine whether a recording came
from the console by comparing the recording's associated canvas with the current value of
_recordingCanvas. Previously, when stopping a recording, we would always null the value,
which meant that all non-single-frame recordings (single-frame recordings are stopped by
the agent after the first paint or tick after an action is performed) would be categorized
as coming from the console, since _recordingCanvas would be null by the time the frontend
recieved the payload.

This patch changes it so that the nulling of _recordingCanvas in stopRecording is only
done if the agent command errors. It was already the case that _recordingCanvas was nulled
in stopRecording, so this patch just prevents it from being nulled too early.

  • UserInterface/Controllers/CanvasManager.js:

(WI.CanvasManager.prototype.stopRecording):

LayoutTests:

  • inspector/canvas/recording-2d.html:

Reorder the agent calls so that the CanvasManager _recordingCanvas state variable has a
chance to properly update after a recording is stopped.

10:05 PM Changeset in webkit [229619] by wilander@apple.com
  • 13 edits in trunk/Source

Resource Load Statistics: Add clearing of storage access to WebResourceLoadStatisticsStore::clearInMemory()
https://bugs.webkit.org/show_bug.cgi?id=183641
<rdar://problem/38469497>

Reviewed by Brent Fulgham and Chris Dumez.

Source/WebCore:

No new tests. This change is to stabilize existing layout tests.
See Ryan Haddad's comment in https://bugs.webkit.org/show_bug.cgi?id=183620.

  • platform/network/NetworkStorageSession.h:
  • platform/network/cf/NetworkStorageSessionCFNet.cpp:

(WebCore::NetworkStorageSession::removeAllStorageAccess):

New function to clear out all storage access entries.

Source/WebKit:

This change is to stabilize existing layout tests by removing
all storage access entries on a call to
WebResourceLoadStatisticsStore::clearInMemory().
See Ryan Haddad's comment in https://bugs.webkit.org/show_bug.cgi?id=183620.

Almost all of the code changes are piping to get this
call from the WebResourceLoadStatisticsStore to
WebCore::NetworkStorageSession where entries reside.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::removeAllStorageAccess):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkProcess.messages.in:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::removeAllStorageAccess):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/WebResourceLoadStatisticsStore.cpp:

(WebKit::WebResourceLoadStatisticsStore::WebResourceLoadStatisticsStore):
(WebKit::WebResourceLoadStatisticsStore::removeAllStorageAccess):
(WebKit::WebResourceLoadStatisticsStore::clearInMemory):

Now also clears all storage access entries in the network process.

  • UIProcess/WebResourceLoadStatisticsStore.h:
  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::removeAllStorageAccessHandler):
(WebKit::WebsiteDataStore::enableResourceLoadStatisticsAndSetTestingCallback):

  • UIProcess/WebsiteData/WebsiteDataStore.h:
8:17 PM Changeset in webkit [229618] by aakash_jain@apple.com
  • 4 edits in trunk/Websites/perf.webkit.org

Add support for boolean properties in BuildbotSyncer while submitting build request to Buildbot 0.9 server
https://bugs.webkit.org/show_bug.cgi?id=183638

Reviewed by Ryosuke Niwa.

  • tools/js/buildbot-syncer.js:

(BuildbotSyncer._parseRepositoryGroupPropertyTemplate): Allow boolean properties.

  • server-tests/tools-sync-buildbot-integration-tests.js: Tests for boolean properties.
  • unit-tests/buildbot-syncer-tests.js: Ditto.
3:58 PM Changeset in webkit [229617] by Ryan Haddad
  • 11 edits
    1 copy
    39 deletes in trunk

Unreviewed, rolling out r229613.

Caused API test failures

Reverted changeset:

"Make policy decisions asynchronous"
https://bugs.webkit.org/show_bug.cgi?id=180568
https://trac.webkit.org/changeset/229613

3:52 PM Changeset in webkit [229616] by youenn@apple.com
  • 15 edits in trunk/Source

imported/w3c/web-platform-tests/WebCryptoAPI/wrapKey_unwrapKey/wrapKey_unwrapKey.worker.html is crashing
https://bugs.webkit.org/show_bug.cgi?id=183602

Reviewed by Chris Dumez.

Introduce a map of ScriptExecutionContext that is read/write protected using a Lock.
This allows introducing postTaskTo taking a ScriptExecutionContext identifier and callable from any thread.
Use that method in Crypto instead of refing/unrefing the context.
Lock only happens if context does some postTask activity. This is governed by calling or not the new contextIdentifier() getter.

Covered by crypto tests no longer failing m_workerGlobalScope->hasOneRef() assertion.

  • crypto/CryptoAlgorithm.cpp:

(WebCore::dispatchAlgorithmOperation):

  • crypto/algorithms/CryptoAlgorithmECDH.cpp:

(WebCore::CryptoAlgorithmECDH::deriveBits):

  • crypto/algorithms/CryptoAlgorithmSHA1.cpp:

(WebCore::CryptoAlgorithmSHA1::digest):

  • crypto/algorithms/CryptoAlgorithmSHA224.cpp:

(WebCore::CryptoAlgorithmSHA224::digest):

  • crypto/algorithms/CryptoAlgorithmSHA256.cpp:

(WebCore::CryptoAlgorithmSHA256::digest):

  • crypto/algorithms/CryptoAlgorithmSHA384.cpp:

(WebCore::CryptoAlgorithmSHA384::digest):

  • crypto/algorithms/CryptoAlgorithmSHA512.cpp:

(WebCore::CryptoAlgorithmSHA512::digest):

  • crypto/gcrypt/CryptoKeyRSAGCrypt.cpp:

(WebCore::CryptoKeyRSA::generatePair):

  • crypto/mac/CryptoKeyRSAMac.cpp:

(WebCore::CryptoKeyRSA::generatePair):

  • dom/Document.cpp:

(WebCore::Document::~Document):

  • dom/ScriptExecutionContext.cpp:

(WebCore::allScriptExecutionContextsMapLock):
(WebCore::ScriptExecutionContext::ScriptExecutionContext):
(WebCore::ScriptExecutionContext::removeFromContextsMap):
(WebCore::ScriptExecutionContext::checkConsistency const):
(WebCore::ScriptExecutionContext::postTaskTo):

  • dom/ScriptExecutionContext.h:

(WebCore::ScriptExecutionContext::contextIdentifier const):

  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::~WorkerGlobalScope):

3:32 PM Changeset in webkit [229615] by Chris Dumez
  • 9 edits in trunk/Source

Reduce use of SWServerToContextConnection::globalServerToContextConnection()
https://bugs.webkit.org/show_bug.cgi?id=183626

Reviewed by Youenn Fablet.

Source/WebCore:

Reduce use of SWServerToContextConnection::globalServerToContextConnection() as we are moving towards
having multiple context connections.

No new tests, no expected behavior change.

  • workers/service/server/SWServer.cpp:

(WebCore::SWServer::matchAll):
(WebCore::SWServer::serverToContextConnectionCreated):
(WebCore::SWServer::runServiceWorkerIfNecessary):
(WebCore::SWServer::runServiceWorker):
(WebCore::SWServer::terminateWorkerInternal):
(WebCore::SWServer::markAllWorkersAsTerminated):
(WebCore::SWServer::workerContextTerminated):
(WebCore::SWServer::fireInstallEvent):
(WebCore::SWServer::fireActivateEvent):

  • workers/service/server/SWServer.h:
  • workers/service/server/SWServerToContextConnection.cpp:

(WebCore::SWServerToContextConnection::findClientByIdentifier):
(WebCore::SWServerToContextConnection::matchAll):
(WebCore::SWServerToContextConnection::claim):

  • workers/service/server/SWServerWorker.cpp:

(WebCore::SWServerWorker::contextConnection):
(WebCore::SWServerWorker::matchAll):

  • workers/service/server/SWServerWorker.h:

Source/WebKit:

Reduce use of SWServerToContextConnection::globalServerToContextConnection() as we are moving
towards having multiple context connections.

  • StorageProcess/ServiceWorker/WebSWServerConnection.cpp:

(WebKit::WebSWServerConnection::startFetch):
(WebKit::WebSWServerConnection::postMessageToServiceWorker):

3:20 PM Changeset in webkit [229614] by youenn@apple.com
  • 3 edits
    3 adds in trunk

MessagePort should remove its listeners when being closed
https://bugs.webkit.org/show_bug.cgi?id=183644

Reviewed by Chris Dumez.

Source/WebCore:

Test: http/tests/workers/worker-messageport.html

  • dom/MessagePort.cpp:

(WebCore::MessagePort::close):
(WebCore::MessagePort::contextDestroyed):

LayoutTests:

  • http/tests/workers/resources/messageport-echo-worker.js: Added.
  • http/tests/workers/worker-messageport-expected.txt: Added.
  • http/tests/workers/worker-messageport.html: Added.
2:47 PM Changeset in webkit [229613] by Chris Dumez
  • 11 edits
    27 copies
    1 move
    73 adds in trunk

Make policy decisions asynchronous
https://bugs.webkit.org/show_bug.cgi?id=180568
<rdar://problem/37131297>

Reviewed by Alex Christensen.

Source/WebKit:

Get rid of synchronous IPC and synchronous code paths for policy delegates.
Policy decisions are now all made asynchronously and rely on asynchronous
IPC.

This code change is based on work by Alex Christensen.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForResponse):

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

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):

LayoutTests:

Rebaseline tests for WebKit2. The issue is that some tests dump policy delegate calls
and things now happen in a slightly different order now that those delegates are
asynchronous.

  • TestExpectations:
  • http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-main-frame-expected.txt:
  • platform/ios/http/tests/loading/simple-subframe-expected.txt:
  • platform/mac-wk2/http/tests/loading/simple-subframe-expected.txt: Copied from LayoutTests/platform/ios/http/tests/loading/simple-subframe-expected.txt.
  • platform/wk2/fast/loader/fragment-navigation-base-blank-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/fast/loader/iframe-meta-refresh-base-blank-expected.txt: Copied from LayoutTests/platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt.
  • platform/wk2/fast/loader/iframe-set-location-base-blank-expected.txt: Copied from LayoutTests/platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt.
  • platform/wk2/fast/loader/main-document-url-for-non-http-loads-expected.txt: Added.
  • platform/wk2/fast/loader/refresh-iframe-base-blank-expected.txt: Copied from LayoutTests/platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt.
  • platform/wk2/fast/loader/subframe-removes-itself-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/contentdispositionattachmentsandbox/cross-origin-frames-disabled-expected.txt: Added.
  • platform/wk2/http/tests/contentextensions/block-everything-unless-domain-expected.txt: Added.
  • platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt:
  • platform/wk2/http/tests/loading/bad-server-subframe-expected.txt: Added.
  • platform/wk2/http/tests/loading/basic-auth-load-URL-with-consecutive-slashes-expected.txt:
  • platform/wk2/http/tests/loading/redirect-with-no-location-crash-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/loading/server-redirect-for-provisional-load-caching-expected.txt: Added.
  • platform/wk2/http/tests/loading/slow-parsing-subframe-expected.txt: Added.
  • platform/wk2/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt: Added.
  • platform/wk2/http/tests/misc/window-dot-stop-expected.txt: Added.
  • platform/wk2/http/tests/navigation/redirect-preserves-fragment-expected.txt: Added.
  • platform/wk2/http/tests/navigation/redirect-to-fragment-expected.txt: Added.
  • platform/wk2/http/tests/navigation/redirect-to-invalid-url-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-in-body-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-conflict-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-allow-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
  • platform/wk2/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Added.
  • platform/wk2/http/tests/security/blocked-on-redirect-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/data-url-iframe-in-main-frame-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-main-frame-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-main-frame-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-iframe-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-iframe-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-enforced-and-report-policies-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-inherited-policy-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-javascript-url-iframe-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-main-frame-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-main-frame-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-xslt-document-in-iframe-with-inherited-policy-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-plugin-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-plugin-in-main-frame-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-main-frame-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-iframe-with-inherited-policy-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-main-frame-expected.txt: Copied from LayoutTests/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-main-frame-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-synchronous-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-synchronous-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/secure-image-after-upgrade-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/secure-image-after-upgrade-redirect-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/iframe-upgrade.https-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/proper-nested-upgrades-expected.txt: Added.
  • platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-insecure-css-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-redirect-http-to-https-script-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-redirect-https-to-http-script-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/http-0.9/iframe-blocked-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/about-blank-iframe-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/data-url-iframe-in-main-frame-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/mixedContent/data-url-script-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/mixedContent/empty-url-plugin-in-frame-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/mixedContent/insecure-css-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/mixedContent/insecure-css-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/insecure-css-with-secure-cookies-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/insecure-executable-css-with-secure-cookies-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/insecure-form-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/mixedContent/insecure-form-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/insecure-iframe-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/insecure-iframe-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/insecure-image-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/mixedContent/javascript-url-form-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/redirect-http-to-https-iframe-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-block-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-expected.txt: Added.
  • platform/wk2/http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/http/tests/security/xssAuditor/script-tag-with-callbacks-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/inspector/page/frameScheduledNavigation-expected.txt: Added.
  • platform/wk2/loader/go-back-cached-main-resource-expected.txt: Added.
  • platform/wk2/webarchive/loading/mainresource-null-mimetype-crash-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/webarchive/loading/test-loading-archive-expected.txt: Copied from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
  • platform/wk2/webarchive/loading/video-in-webarchive-expected.txt: Renamed from LayoutTests/platform/mac/webarchive/loading/mainresource-null-mimetype-crash-expected.txt.
1:43 PM Changeset in webkit [229612] by Chris Dumez
  • 7 edits in trunk/Source

Drop unnecessary StorageToWebProcessConnection::workerContextProcessConnectionCreated()
https://bugs.webkit.org/show_bug.cgi?id=183624

Reviewed by Youenn Fablet.

Source/WebCore:

Pass in context connection to SWServer::serverToContextConnectionCreated() to avoid
relying on the deprecated globalServerToContextConnection().

No new tests, no expected behavior change.

  • workers/service/server/SWServer.cpp:

(WebCore::SWServer::serverToContextConnectionCreated):

  • workers/service/server/SWServer.h:

Source/WebKit:

Drop unnecessary StorageToWebProcessConnection::workerContextProcessConnectionCreated()
since it was going through all SWServers. Calling workerContextProcessConnectionCreated()
on every StorageToWebProcessConnection was thus doing redundant work.

  • StorageProcess/StorageProcess.cpp:

(WebKit::StorageProcess::createStorageToWebProcessConnection):

  • StorageProcess/StorageToWebProcessConnection.cpp:

(WebKit::StorageToWebProcessConnection::establishSWServerConnection):
(WebKit::StorageToWebProcessConnection::workerContextProcessConnectionCreated): Deleted.

  • StorageProcess/StorageToWebProcessConnection.h:
1:20 PM Changeset in webkit [229611] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WTF

Fix the build after r229387
https://bugs.webkit.org/show_bug.cgi?id=183639
<rdar://problem/38448568>

Reviewed by Dean Jackson.

  • wtf/Platform.h:
1:07 PM Changeset in webkit [229610] by Ryan Haddad
  • 2 edits in trunk/LayoutTests

Skip three svg LayoutTests.
https://bugs.webkit.org/show_bug.cgi?id=183572

Unreviewed test gardening.

1:05 PM Changeset in webkit [229609] by mark.lam@apple.com
  • 70 edits in trunk/Source

Enhance the MacroAssembler and LinkBuffer to support pointer profiling.
https://bugs.webkit.org/show_bug.cgi?id=183623
<rdar://problem/38443314>

Reviewed by Michael Saboff.

Source/JavaScriptCore:

  1. Added a PtrTag argument to indirect call() and indirect jump() MacroAssembler emitters to support pointer profiling.
  1. Also added tagPtr(), untagPtr(), and removePtrTag() placeholder methods.
  1. Added a PtrTag to LinkBuffer finalizeCodeWithoutDisassembly() and clients.
  1. Updated clients to pass a PtrTag. For the most part, I just apply NoPtrTag as a placeholder until we have time to analyze what pointer profile each client site has later.


  1. Apply PtrTags to the YarrJIT.
  • assembler/ARM64Assembler.h:

(JSC::ARM64Assembler::linkJumpOrCall):

  • assembler/AbstractMacroAssembler.h:

(JSC::AbstractMacroAssembler::getLinkerAddress):
(JSC::AbstractMacroAssembler::tagPtr):
(JSC::AbstractMacroAssembler::untagPtr):
(JSC::AbstractMacroAssembler::removePtrTag):

  • assembler/LinkBuffer.cpp:

(JSC::LinkBuffer::finalizeCodeWithoutDisassembly):
(JSC::LinkBuffer::finalizeCodeWithDisassembly):

  • assembler/LinkBuffer.h:

(JSC::LinkBuffer::link):
(JSC::LinkBuffer::locationOfNearCall):
(JSC::LinkBuffer::locationOf):

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::jump):
(JSC::MacroAssemblerARM::call):
(JSC::MacroAssemblerARM::readCallTarget):

  • assembler/MacroAssemblerARM64.h:

(JSC::MacroAssemblerARM64::call):
(JSC::MacroAssemblerARM64::jump):
(JSC::MacroAssemblerARM64::readCallTarget):
(JSC::MacroAssemblerARM64::linkCall):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::jump):
(JSC::MacroAssemblerARMv7::relativeTableJump):
(JSC::MacroAssemblerARMv7::call):
(JSC::MacroAssemblerARMv7::readCallTarget):

  • assembler/MacroAssemblerCodeRef.cpp:

(JSC::MacroAssemblerCodePtr::createLLIntCodePtr):
(JSC::MacroAssemblerCodeRef::createLLIntCodeRef):

  • assembler/MacroAssemblerCodeRef.h:

(JSC::FunctionPtr::FunctionPtr):
(JSC::FunctionPtr::value const):
(JSC::MacroAssemblerCodePtr:: const):
(JSC::MacroAssemblerCodeRef::MacroAssemblerCodeRef):
(JSC::MacroAssemblerCodeRef::retaggedCode const):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::jump):
(JSC::MacroAssemblerMIPS::call):
(JSC::MacroAssemblerMIPS::readCallTarget):

  • assembler/MacroAssemblerX86.h:

(JSC::MacroAssemblerX86::call):
(JSC::MacroAssemblerX86::jump):
(JSC::MacroAssemblerX86::readCallTarget):

  • assembler/MacroAssemblerX86Common.cpp:

(JSC::MacroAssembler::probe):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::jump):
(JSC::MacroAssemblerX86Common::call):

  • assembler/MacroAssemblerX86_64.h:

(JSC::MacroAssemblerX86_64::call):
(JSC::MacroAssemblerX86_64::jump):
(JSC::MacroAssemblerX86_64::readCallTarget):

  • assembler/testmasm.cpp:

(JSC::compile):
(JSC::invoke):

  • b3/B3Compile.cpp:

(JSC::B3::compile):

  • b3/B3LowerMacros.cpp:
  • b3/air/AirCCallSpecial.cpp:

(JSC::B3::Air::CCallSpecial::generate):

  • b3/air/testair.cpp:
  • b3/testb3.cpp:

(JSC::B3::invoke):
(JSC::B3::testInterpreter):
(JSC::B3::testEntrySwitchSimple):
(JSC::B3::testEntrySwitchNoEntrySwitch):
(JSC::B3::testEntrySwitchWithCommonPaths):
(JSC::B3::testEntrySwitchWithCommonPathsAndNonTrivialEntrypoint):
(JSC::B3::testEntrySwitchLoop):

  • bytecode/AccessCase.cpp:

(JSC::AccessCase::generateImpl):

  • bytecode/AccessCaseSnippetParams.cpp:

(JSC::SlowPathCallGeneratorWithArguments::generateImpl):

  • bytecode/InlineAccess.cpp:

(JSC::linkCodeInline):
(JSC::InlineAccess::rewireStubAsJump):

  • bytecode/PolymorphicAccess.cpp:

(JSC::AccessGenerationState::emitExplicitExceptionHandler):
(JSC::PolymorphicAccess::regenerate):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compileExceptionHandlers):
(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compileFunction):
(JSC::DFG::JITCompiler::noticeCatchEntrypoint):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::appendCall):

  • dfg/DFGJITFinalizer.cpp:

(JSC::DFG::JITFinalizer::finalize):
(JSC::DFG::JITFinalizer::finalizeFunction):

  • dfg/DFGOSRExit.cpp:

(JSC::DFG::OSRExit::emitRestoreArguments):
(JSC::DFG::OSRExit::compileOSRExit):

  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::handleExitCounts):
(JSC::DFG::osrWriteBarrier):
(JSC::DFG::adjustAndJumpToTarget):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::emitSwitchIntJump):
(JSC::DFG::SpeculativeJIT::emitSwitchImm):
(JSC::DFG::SpeculativeJIT::emitSwitchStringOnString):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGThunks.cpp:

(JSC::DFG::osrExitThunkGenerator):
(JSC::DFG::osrExitGenerationThunkGenerator):
(JSC::DFG::osrEntryThunkGenerator):

  • ftl/FTLCompile.cpp:

(JSC::FTL::compile):

  • ftl/FTLJITFinalizer.cpp:

(JSC::FTL::JITFinalizer::finalizeCommon):

  • ftl/FTLLazySlowPath.cpp:

(JSC::FTL::LazySlowPath::generate):

  • ftl/FTLLink.cpp:

(JSC::FTL::link):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::lower):
(JSC::FTL::DFG::LowerDFGToB3::compileCallOrConstructVarargsSpread):
(JSC::FTL::DFG::LowerDFGToB3::compileCallOrConstructVarargs):
(JSC::FTL::DFG::LowerDFGToB3::compileCallEval):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):
(JSC::FTL::compileFTLOSRExit):

  • ftl/FTLSlowPathCall.cpp:

(JSC::FTL::SlowPathCallContext::makeCall):

  • ftl/FTLThunks.cpp:

(JSC::FTL::genericGenerationThunkGenerator):
(JSC::FTL::osrExitGenerationThunkGenerator):
(JSC::FTL::lazySlowPathGenerationThunkGenerator):
(JSC::FTL::slowPathCallThunkGenerator):

  • jit/AssemblyHelpers.cpp:

(JSC::AssemblyHelpers::callExceptionFuzz):
(JSC::AssemblyHelpers::debugCall):

  • jit/CCallHelpers.cpp:

(JSC::CCallHelpers::ensureShadowChickenPacket):

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::jumpToExceptionHandler):

  • jit/ExecutableAllocator.cpp:

(JSC::FixedVMPoolExecutableAllocator::jitWriteThunkGenerator):

  • jit/JIT.cpp:

(JSC::JIT::emitEnterOptimizationCheck):
(JSC::JIT::link):
(JSC::JIT::privateCompileExceptionHandlers):

  • jit/JIT.h:

(JSC::JIT::appendCall):

  • jit/JITMathIC.h:

(JSC::isProfileEmpty):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::emit_op_switch_char):
(JSC::JIT::emit_op_switch_string):
(JSC::JIT::emitSlow_op_loop_hint):
(JSC::JIT::privateCompileHasIndexedProperty):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_catch):
(JSC::JIT::emit_op_switch_imm):
(JSC::JIT::emit_op_switch_char):
(JSC::JIT::emit_op_switch_string):
(JSC::JIT::privateCompileHasIndexedProperty):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::privateCompileGetByVal):
(JSC::JIT::privateCompileGetByValWithCachedId):
(JSC::JIT::privateCompilePutByVal):
(JSC::JIT::privateCompilePutByValWithCachedId):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::stringGetByValStubGenerator):

  • jit/JITStubRoutine.h:
  • jit/Repatch.cpp:

(JSC::readCallTarget):
(JSC::appropriateOptimizingPutByIdFunction):
(JSC::linkPolymorphicCall):
(JSC::resetPutByID):

  • jit/SlowPathCall.h:

(JSC::JITSlowPathCall::call):

  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::finalize):
(JSC::SpecializedThunkJIT::callDoubleToDouble):

  • jit/ThunkGenerators.cpp:

(JSC::throwExceptionFromCallSlowPathGenerator):
(JSC::slowPathFor):
(JSC::linkCallThunkGenerator):
(JSC::linkPolymorphicCallThunkGenerator):
(JSC::virtualThunkFor):
(JSC::nativeForGenerator):
(JSC::arityFixupGenerator):
(JSC::unreachableGenerator):
(JSC::boundThisNoArgsFunctionCallGenerator):

  • llint/LLIntThunks.cpp:

(JSC::LLInt::generateThunkWithJumpTo):
(JSC::LLInt::functionForCallEntryThunkGenerator):
(JSC::LLInt::functionForConstructEntryThunkGenerator):
(JSC::LLInt::functionForCallArityCheckThunkGenerator):
(JSC::LLInt::functionForConstructArityCheckThunkGenerator):
(JSC::LLInt::evalEntryThunkGenerator):
(JSC::LLInt::programEntryThunkGenerator):
(JSC::LLInt::moduleProgramEntryThunkGenerator):

  • runtime/PtrTag.h:
  • wasm/WasmB3IRGenerator.cpp:

(JSC::Wasm::B3IRGenerator::addCall):
(JSC::Wasm::B3IRGenerator::addCallIndirect):

  • wasm/WasmBBQPlan.cpp:

(JSC::Wasm::BBQPlan::complete):

  • wasm/WasmBinding.cpp:

(JSC::Wasm::wasmToWasm):

  • wasm/WasmOMGPlan.cpp:

(JSC::Wasm::OMGPlan::work):

  • wasm/WasmThunks.cpp:

(JSC::Wasm::throwExceptionFromWasmThunkGenerator):
(JSC::Wasm::throwStackOverflowFromWasmThunkGenerator):
(JSC::Wasm::triggerOMGTierUpThunkGenerator):

  • wasm/js/WasmToJS.cpp:

(JSC::Wasm::handleBadI64Use):
(JSC::Wasm::wasmToJS):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::loadFromFrameAndJump):
(JSC::Yarr::YarrGenerator::BacktrackingState::linkDataLabels):
(JSC::Yarr::YarrGenerator::generateTryReadUnicodeCharacterHelper):
(JSC::Yarr::YarrGenerator::generateEnter):
(JSC::Yarr::YarrGenerator::YarrGenerator):
(JSC::Yarr::YarrGenerator::compile):
(JSC::Yarr::jitCompile):

  • yarr/YarrJIT.h:

(JSC::Yarr::YarrCodeBlock::execute):

Source/WebCore:

No new tests. Just adding PtrTags required by new MacroAssembler API.

  • cssjit/FunctionCall.h:

(WebCore::FunctionCall::prepareAndCall):

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::compile):

1:00 PM Changeset in webkit [229608] by caitp@igalia.com
  • 11 edits
    1 add in trunk

[JSC] fix order of evaluation for ClassDefinitionEvaluation
https://bugs.webkit.org/show_bug.cgi?id=183523

Reviewed by Keith Miller.

Computed property names need to be evaluated in source order during class
definition evaluation, as it's observable (and specified to work this way).

This change improves compatibility with Chromium.

JSTests:

  • stress/class_elements.js: Added.

(test):
(test.C.prototype.effect):
(test.C.effect):
(test.C.prototype.get effect):
(test.C.prototype.set effect):
(test.C):

Source/JavaScriptCore:

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::emitDefineClassElements):

  • bytecompiler/NodesCodegen.cpp:

(JSC::PropertyListNode::emitBytecode):
(JSC::ClassExprNode::emitBytecode):

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createClassExpr):
(JSC::ASTBuilder::createGetterOrSetterProperty):
(JSC::ASTBuilder::createProperty):

  • parser/NodeConstructors.h:

(JSC::PropertyNode::PropertyNode):
(JSC::ClassExprNode::ClassExprNode):

  • parser/Nodes.cpp:

(JSC::PropertyListNode::hasStaticallyNamedProperty):

  • parser/Nodes.h:

(JSC::PropertyNode::isClassProperty const):
(JSC::PropertyNode::isStaticClassProperty const):
(JSC::PropertyNode::isInstanceClassProperty const):

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseClass):
(JSC::Parser<LexerType>::parseProperty):
(JSC::Parser<LexerType>::parseGetterSetter):

  • parser/Parser.h:
  • parser/SyntaxChecker.h:

(JSC::SyntaxChecker::createClassExpr):
(JSC::SyntaxChecker::createProperty):
(JSC::SyntaxChecker::createGetterOrSetterProperty):

12:54 PM Changeset in webkit [229607] by jmarcell@apple.com
  • 7 edits in tags/Safari-606.1.9.1/Source

Versioning.

12:47 PM Changeset in webkit [229606] by jmarcell@apple.com
  • 1 copy in tags/Safari-606.1.9.1

New tag.

12:44 PM Changeset in webkit [229605] by keith_miller@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Move jsc CLI breakpoint function to $vm
https://bugs.webkit.org/show_bug.cgi?id=183512

Reviewed by Yusuke Suzuki.

  • jsc.cpp:

(GlobalObject::finishCreation):
(functionBreakpoint): Deleted.

  • tools/JSDollarVM.cpp:

(JSC::functionBreakpoint):
(JSC::JSDollarVM::finishCreation):

10:56 AM Changeset in webkit [229604] by aboya@igalia.com
  • 2 edits in trunk/LayoutTests

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

  • platform/gtk/TestExpectations:
10:51 AM Changeset in webkit [229603] by Chris Fleizach
  • 11 edits
    2 adds in trunk

AX: Implement accessible dismiss action on iOS
https://bugs.webkit.org/show_bug.cgi?id=183352
<rdar://problem/38161500>

Reviewed by Zalan Bujtas.

Source/WebCore:

Test: accessibility/ios-simulator/AOM-dismiss-event.html

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityPerformEscape]):

Tools:

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:

(WTR::AccessibilityUIElement::dismiss const):

  • WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
  • WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
  • WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:

(WTR::AccessibilityUIElement::dismiss):

LayoutTests:

  • accessibility/ios-simulator/AOM-dismiss-event-expected.txt: Added.
  • accessibility/ios-simulator/AOM-dismiss-event.html: Added.
  • platform/mac-wk1/TestExpectations:
10:41 AM Changeset in webkit [229602] by youenn@apple.com
  • 762 edits
    5 copies
    10 moves
    33 adds
    40 deletes in trunk

Update libwebrtc up to 36af4e9614f707f733eb2340fae66d6325aaac5b
https://bugs.webkit.org/show_bug.cgi?id=183481

Reviewed by Eric Carlson.

Source/ThirdParty/libwebrtc:

  • Configurations/libwebrtc.iOS.exp:
  • Configurations/libwebrtc.iOSsim.exp:
  • Configurations/libwebrtc.mac.exp:
  • Source/webrtc/: refreshed
  • libwebrtc.xcodeproj/project.pbxproj:

Source/WebCore:

Covered by existing tests.
Updated libwebrtc binding code.

  • Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:

(WebCore::fillEncodingParameters):

  • platform/mediastream/libwebrtc/LibWebRTCAudioModule.h:

Tools:

  • Scripts/webkitpy/style/checker.py: Do not check style.

LayoutTests:

  • webrtc/video-stats.html:
10:18 AM WebKitGTK/Gardening/Calendar edited by aboya@igalia.com
(diff)
9:18 AM Changeset in webkit [229601] by fred.wang@free.fr
  • 18 edits
    8 copies
    1 delete in trunk/LayoutTests

Finish migration to MathML WPT tests
https://bugs.webkit.org/show_bug.cgi?id=183628

Patch by Frederic Wang <fwang@igalia.com> on 2018-03-14
Reviewed by Manuel Rego Casasnovas.

In r225162, the MathML tests from the WPT repository were imported. They were intended to
replace the ones in imported/mathml-in-html5 but the migration was not fully possible. The
main issue was that many MathML tests use Web fonts to test the use of OpenType parameters
but document.fonts.ready is unreliable in WebKit (bug 174030). A workaround was implemented
in WPT ( https://github.com/w3c/web-platform-tests/pull/10025 ) so this commit finishes
the migration. We update the WPT MathML tests and now run them all, we remove
imported/mathml-in-html5 and the associated TestExpectations failures. Two cases unrelated to
font loading are still failing: One for the SuperscriptShiftUpCramped parameter (bug 156401)
and one for the RadicalDegreeBottomRaisePercent parameter (bug 183631).

LayoutTests/imported/w3c:

Reviewed by Manuel Rego Casasnovas.

  • web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-1-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/fractions/frac-parameters-1-expected.txt.
  • web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-1.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-2-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/fractions/frac-parameters-2-expected.txt.
  • web-platform-tests/mathml/presentation-markup/fractions/frac-parameters-2.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/operators/mo-axis-height-1.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/radicals/root-parameters-1-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/radicals/root-parameters-1-expected.txt.

Also add the failure with RadicalDegreeBottomRaisePercent.

  • web-platform-tests/mathml/presentation-markup/radicals/root-parameters-1.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-1-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/subsup-parameters-1-expected.txt.

Also add the failure for SuperscriptShiftUpCramped.

  • web-platform-tests/mathml/presentation-markup/scripts/subsup-parameters-1.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-1-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-1-expected.txt.
  • web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-1.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-2-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-2-expected.txt.
  • web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-2.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-3-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-3-expected.txt.
  • web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-3.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-4-expected.txt: Renamed from LayoutTests/imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-4-expected.txt.
  • web-platform-tests/mathml/presentation-markup/scripts/underover-parameters-4.html: Import font loading workaround.
  • web-platform-tests/mathml/presentation-markup/tables/table-axis-height.html: Import font loading workaround.
  • web-platform-tests/mathml/relations/css-styling/displaystyle-1.html: Import font loading workaround.
  • web-platform-tests/mathml/relations/css-styling/lengths-3.html: Import font loading workaround.
  • web-platform-tests/mathml/tools/utils/misc.py: Import update to Python 3.

(downloadWithProgressBar):

LayoutTests:

  • TestExpectations: Unskip MathML WPT tests.
  • imported/mathml-in-html5/LICENSE: Removed.
  • imported/mathml-in-html5/README.md: Removed.
  • imported/mathml-in-html5/mathml/presentation-markup/fractions/frac-parameters-1.html: Removed.
  • imported/mathml-in-html5/mathml/presentation-markup/fractions/frac-parameters-2.html: Removed.
  • imported/mathml-in-html5/mathml/presentation-markup/radicals/root-parameters-1.html: Removed.
  • imported/mathml-in-html5/mathml/presentation-markup/scripts/subsup-parameters-1.html: Removed.
  • imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-1.html: Removed.
  • imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-2.html: Removed.
  • imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-3.html: Removed.
  • imported/mathml-in-html5/mathml/presentation-markup/scripts/underover-parameters-4.html: Removed.
  • platform/mac-wk2/TestExpectations: Remove the expectation.
  • platform/win/TestExpectations: Remove the expectation.
9:11 AM Changeset in webkit [229600] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Add label on github when exporting wpt tests to w3c/web-platform-test repo
https://bugs.webkit.org/show_bug.cgi?id=183575

Patch by Brendan McLoughlin <brendan@bocoup.com> on 2018-03-14
Reviewed by Youenn Fablet.

  • Scripts/webkitpy/w3c/test_exporter.py:

(TestExporter.make_pull_request):
(parse_args):

  • Scripts/webkitpy/w3c/test_exporter_unittest.py:

(TestExporterTest.test_export):

7:48 AM Changeset in webkit [229599] by Alan Bujtas
  • 8 edits in trunk/Tools

[LayoutReloaded] Add InlineBox dump
https://bugs.webkit.org/show_bug.cgi?id=183625

Reviewed by Antti Koivisto.

Right now line boxes live off of the inline formatting context but that's temporary and
they will be moved over to the BoxTree.

  • LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:

(BlockFormattingContext.prototype._computeContentHeight):

  • LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:

(InlineFormattingContext):
(InlineFormattingContext.prototype.lines):
(InlineFormattingContext.prototype.layout):
(InlineFormattingContext.prototype._handleText):
(InlineFormattingContext.prototype._commitLine):
(InlineFormattingContext.prototype._initializeLine):

  • LayoutReloaded/FormattingContext/InlineFormatting/Line.js:

(Line):
(Line.prototype.isEmpty):
(Line.prototype.rect):
(Line.prototype.lineBoxes):
(Line.prototype.addLineBox):
(Line.prototype.appendFragment): Deleted.

  • LayoutReloaded/README.md:
  • LayoutReloaded/Utils.js:

(Utils.computedLineHeight):
(Utils.isBlockContainerElement):
(Utils.textHeight):
(Utils._dumpBox):
(Utils._dumpLines.):
(Utils._dumpLines):
(Utils._dumpTree):
(Utils.precisionRound):
(Utils):

  • LayoutReloaded/misc/LayoutReloadedWebKit.patch:
  • LayoutReloaded/test/index.html:
1:04 AM Changeset in webkit [229598] by timothy_horton@apple.com
  • 12 edits in trunk

Fix the build after r229567

  • Configurations/FeatureDefines.xcconfig:

Mar 13, 2018:

10:17 PM Changeset in webkit [229597] by wilander@apple.com
  • 14 edits
    5 adds in trunk

Resource Load Statistics: Immediately forward cookie access for domains with previous user interaction when there's an opener document
https://bugs.webkit.org/show_bug.cgi?id=183620
<rdar://problem/38431469>

Reviewed by Brent Fulgham.

Source/WebCore:

Tests: http/tests/storageAccess/deny-storage-access-under-opener.html

http/tests/storageAccess/grant-storage-access-under-opener.html

It turns out the fix in https://bugs.webkit.org/show_bug.cgi?id=183577
wasn't enough to address the compatibility issues with popups. Some of
them just detect their unpartitioned cookies, auto-dismiss themselves,
and expect their unpartitioned cookies to be available under the opener
afterwards. We should grant them access if the popup's domain has had
user interaction _previously_.

Note that we still need https://bugs.webkit.org/show_bug.cgi?id=183577
because if the popup's domain has not received user interaction
previously, we will not grant it storage access on just the window open.

  • dom/Document.cpp:

(WebCore::Document::hasRequestedPageSpecificStorageAccessWithUserInteraction):
(WebCore::Document::setHasRequestedPageSpecificStorageAccessWithUserInteraction):
(WebCore::Document::hasGrantedPageSpecificStorageAccess): Deleted.
(WebCore::Document::setHasGrantedPageSpecificStorageAccess): Deleted.

Renamed from *Granted* to *Requested* since there is now a case
where access will not be granted, i.e. when the popup domain has
not had user interaction previously.

  • dom/Document.h:
  • loader/ResourceLoadObserver.cpp:

(WebCore::ResourceLoadObserver::setRequestStorageAccessUnderOpenerCallback):

Renamed *Grant* to *Request*.

(WebCore::ResourceLoadObserver::logUserInteractionWithReducedTimeResolution):
(WebCore::ResourceLoadObserver::logWindowCreation):

New function called from DOMWindow::createWindow().

(WebCore::ResourceLoadObserver::requestStorageAccessUnderOpener):

New convenience function.

(WebCore::ResourceLoadObserver::setGrantStorageAccessUnderOpenerCallback): Deleted.

Renamed *Grant* to *Request*.

  • loader/ResourceLoadObserver.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::createWindow):

Now calls ResourceLoadObserver::logWindowCreation() if a window
was created and the opener has a document and a page ID.

Source/WebKit:

It turns out the fix in https://bugs.webkit.org/show_bug.cgi?id=183577
wasn't enough to address the compatibility issues with popups. Some of
them just detect their unpartitioned cookies, auto-dismiss themselves,
and expect their unpartitioned cookies to be available under the opener
afterwards. We should grant them access if the popup's domain has had
user interaction _previously_.

Note that we still need https://bugs.webkit.org/show_bug.cgi?id=183577
because if the popup's domain has not received user interaction
previously, we will not grant it storage access on just the window open.

  • UIProcess/WebResourceLoadStatisticsStore.cpp:

(WebKit::WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener):
(WebKit::WebResourceLoadStatisticsStore::grantStorageAccessUnderOpener): Deleted.

Renamed WebResourceLoadStatisticsStore::grantStorageAccessUnderOpener()
to WebResourceLoadStatisticsStore::requestStorageAccessUnderOpener()
since there is now a case where access will not be granted, i.e. when
the popup domain has not had user interaction previously.

  • UIProcess/WebResourceLoadStatisticsStore.h:
  • UIProcess/WebResourceLoadStatisticsStore.messages.in:

Similar renaming.

  • WebProcess/WebProcess.cpp:

(WebProcess::WebProcess):

Similar renaming.

LayoutTests:

  • http/tests/storageAccess/deny-storage-access-under-opener-expected.txt: Added.
  • http/tests/storageAccess/deny-storage-access-under-opener.html: Added.
  • http/tests/storageAccess/grant-storage-access-under-opener-expected.txt: Added.
  • http/tests/storageAccess/grant-storage-access-under-opener.html: Added.
  • http/tests/storageAccess/resources/set-cookie-and-report-back.html: Added.
  • platform/ios/TestExpectations:

New tests marked as [ Pass ].

  • platform/mac-wk2/TestExpectations:

New tests marked as [ Pass ].

6:02 PM Changeset in webkit [229596] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

fast/loader/javascript-url-iframe-remove-on-navigate.html is a flaky crash on iOS with async delegates
https://bugs.webkit.org/show_bug.cgi?id=183610

Reviewed by Youenn Fablet.

The issue was that in DocumentLoader::loadMainResource(), the call to requestMainResource() which
return null due to the load getting cancelled synchronously. If this load is the parent frame's last
pending load, then the 'load' event gets fired in the parent frame. In the test, the parent frame's
load event handler does a document.write() call which blows away the iframe. As a result, when
we return from the requestMainResource(), m_frame is null and we crash later on dereferencing it.

No new tests, covered by fast/loader/javascript-url-iframe-remove-on-navigate-async-delegate.html
which was crashing flakily.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::loadMainResource):

6:00 PM Changeset in webkit [229595] by jmarcell@apple.com
  • 2 edits
    1 move
    1 add
    6 deletes in tags/Safari-606.1.9/Source/WebKit

Revert r229512. rdar://problem/38435829

6:00 PM Changeset in webkit [229594] by jmarcell@apple.com
  • 1 edit
    10 deletes in tags/Safari-606.1.9/Source/WebKit

Revert r229592. rdar://problem/38435829

5:07 PM WebKitGTK/2.20.x edited by Adrian Perez de Castro
Remove item which is not yet merged to trunk (diff)
5:06 PM WebKitGTK/2.20.x edited by Adrian Perez de Castro
(diff)
4:47 PM Changeset in webkit [229593] by jmarcell@apple.com
  • 1 edit
    13 adds in tags/Safari-606.1.9/Source/WebKit

Cherry-pick r229592. rdar://problem/38435829

4:19 PM Changeset in webkit [229592] by jer.noble@apple.com
  • 1 edit
    13 adds in trunk/Source/WebKit

Add missing artwork for fullscreen mode.
https://bugs.webkit.org/show_bug.cgi?id=183618

Reviewed by Jon Lee.

4:18 PM Changeset in webkit [229591] by timothy_horton@apple.com
  • 9 edits in trunk/Source

Add and adopt WK_ALTERNATE_FRAMEWORKS_DIR in WTF and bmalloc
https://bugs.webkit.org/show_bug.cgi?id=183576
<rdar://problem/38396766>

Reviewed by Dan Bernstein.

  • Configurations/Base.xcconfig:

Source/bmalloc:

  • Configurations/bmalloc.xcconfig:
  • Configurations/mbmalloc.xcconfig:

Source/WTF:

  • Configurations/CopyWTFHeaders.xcconfig:
  • Configurations/WTF.xcconfig:
  • Configurations/mbmalloc.xcconfig:
4:01 PM Changeset in webkit [229590] by youenn@apple.com
  • 5 edits in trunk/LayoutTests

Layout Test imported/w3c/web-platform-tests/service-workers/service-worker/register-closed-window.https.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=182853
<rdar://problem/37645429>

Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

  • web-platform-tests/service-workers/service-worker/register-closed-window.https-expected.txt:

LayoutTests:

3:54 PM Changeset in webkit [229589] by jer.noble@apple.com
  • 5 edits
    1 add in trunk

[iOS] Muted media playback can interrupt out-of-process audio
https://bugs.webkit.org/show_bug.cgi?id=183606
<rdar://problem/37466253>

Reviewed by Eric Carlson.

Source/WebCore:

Test: Updated TestWebKitAPI test to verify the correct AVAudioSession category is set.

A non-playing, non-muted media element will cause the AVAudioSession category to be set to
"playing" when a muted media element begins playback. Ignore these non-playing elements for
the purposes of determining the AVAudioSession category.

  • platform/audio/cocoa/MediaSessionManagerCocoa.cpp:

(PlatformMediaSessionManager::updateSessionState):

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitLegacy/ios/video-with-paused-audio-and-playing-muted.html: Added.
2:42 PM Changeset in webkit [229588] by BJ Burg
  • 2 edits in trunk/Source/WebKit

[WK2] Web Inspector: NavigationAction for opening a link in a new tab should have a UserGestureIndicator
https://bugs.webkit.org/show_bug.cgi?id=183612
<rdar://problem/38388641>

Reviewed by Timothy Hatcher.

The current gesture token will be attached to the NavigationAction at construction time,
so set up a UserGestureIndicator when creating the action and sending it out.

  • WebProcess/WebPage/WebInspector.cpp:

(WebKit::WebInspector::openInNewTab):

2:14 PM Changeset in webkit [229587] by youenn@apple.com
  • 5 edits in trunk

Calling removeTrack with RTCRtpSender does not set SenderTrack to null
https://bugs.webkit.org/show_bug.cgi?id=183308

Reviewed by Eric Carlson.

LayoutTests/imported/w3c:

  • web-platform-tests/webrtc/RTCPeerConnection-removeTrack.https-expected.txt:

Source/WebCore:

Covered by updated test.

  • Modules/mediastream/RTCRtpSender.cpp:

(WebCore::RTCRtpSender::stop): Set track to null when being stopped i.e. removed.

  • Modules/mediastream/RTCRtpSender.h:
1:50 PM WebKitGTK/Gardening/Calendar edited by Michael Catanzaro
(diff)
1:48 PM Changeset in webkit [229586] by Michael Catanzaro
  • 2 edits in trunk/LayoutTests

Unreviewed GTK expectations gardening

  • platform/gtk/TestExpectations:
1:39 PM Changeset in webkit [229585] by youenn@apple.com
  • 5 edits
    3 adds in trunk

Changing link element rel attribute from preload to stylesheet should succeed loading the stylesheet
https://bugs.webkit.org/show_bug.cgi?id=183601
<rdar://problem/38309441>

Reviewed by Antti Koivisto.

Source/WebCore:

Test: http/wpt/preload/change-link-rel-attribute.html

  • loader/LinkPreloadResourceClients.h:

(WebCore::LinkPreloadResourceClient::clearResource): Remove the call to CachedResource::cancelLoad.
This call is expected to be called by ResourceLoader when cancelling the load from below CachedResource.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::allClientsRemoved): In case of preload,
cancel the load if not finished when there is no more client attached to it.

  • loader/cache/CachedResource.h:

LayoutTests:

  • http/wpt/preload/change-link-rel-attribute-expected.txt: Added.
  • http/wpt/preload/change-link-rel-attribute.html: Added.
  • http/wpt/preload/resources/style.css: Added.

(body):

1:14 PM Changeset in webkit [229584] by Michael Catanzaro
  • 2 edits in trunk/Source/WTF

Unreviewed, fix typo in a comment

  • wtf/Platform.h:
1:10 PM Changeset in webkit [229583] by dino@apple.com
  • 2 edits in trunk/Source/WebKit

WKSystemPreviewView needs to implement some of UIScrollViewDelegate
https://bugs.webkit.org/show_bug.cgi?id=183607
<rdar://problem/38427622>

Reviewed by Antoine Quint.

Add an empty implementation of scrollViewDidScroll.

  • UIProcess/ios/WKSystemPreviewView.mm:

(-[WKSystemPreviewView scrollViewDidScroll:]):

12:44 PM Changeset in webkit [229582] by fred.wang@free.fr
  • 2 edits
    2 deletes in trunk/LayoutTests

Skip mathml-in-dashboard-expected on Windows
https://bugs.webkit.org/show_bug.cgi?id=183562

There is no dashboard compatibility mode on Windows so the test is not necessary.

Patch by Frederic Wang <fwang@igalia.com> on 2018-03-13
Reviewed by Alexey Proskuryakov.

  • platform/win/TestExpectations: Skip test.
  • platform/win/mathml/mathml-in-dashboard-expected.png: Removed.
  • platform/win/mathml/mathml-in-dashboard-expected.txt: Removed.
12:25 PM Changeset in webkit [229581] by jmarcell@apple.com
  • 3 edits in tags/Safari-606.1.7.1/Source/WebKit

Cherry-pick r229575. rdar://problem/38219763

11:28 AM Changeset in webkit [229580] by dino@apple.com
  • 2 edits in trunk/Source/WebCore/PAL

Fix some build errors and cleanup QuickLookSPI.h
https://bugs.webkit.org/show_bug.cgi?id=183599

Reviewed by Ryan Haddad.

  • pal/spi/ios/QuickLookSPI.h:
11:07 AM Changeset in webkit [229579] by Chris Dumez
  • 2 edits
    2 adds in trunk/LayoutTests

fast/loader/javascript-url-iframe-remove-on-navigate.html is flaky with async policy delegates
https://bugs.webkit.org/show_bug.cgi?id=183588

Reviewed by Alex Christensen.

The test was setting the frame's src to a javascript URL in a setTimeout(0), expecting the
navigation policy delegate to have already completed. However, with asynchronous policy
delegates, this is not necessarily the case. Therefore, we now wait for the beforeunload
event to be fired at the window, since this indicates a policy decision has been made and
we are actually navigating.

I checked that this test was printing the "FAIL" alert in both Firefox and Chrome before
this change.

  • fast/loader/javascript-url-iframe-remove-on-navigate-async-delegate-expected.txt: Added.
  • fast/loader/javascript-url-iframe-remove-on-navigate-async-delegate.html: Added.
  • fast/loader/javascript-url-iframe-remove-on-navigate.html:
10:16 AM Changeset in webkit [229578] by Ross Kirsling
  • 10 edits in trunk

[Win] Layout Test fast/html/menuitem-element.html is failing.
https://bugs.webkit.org/show_bug.cgi?id=179299

Reviewed by Per Arne Vollan.

Source/WebKitLegacy/win:

  • Interfaces/IWebPreferencesPrivate.idl:
  • WebPreferenceKeysPrivate.h:
  • WebPreferences.cpp:

(WebPreferences::menuItemElementEnabled):
(WebPreferences::setMenuItemElementEnabled):

  • WebPreferences.h:
  • WebView.cpp:

(WebView::notifyPreferencesChanged):
Add private web preference "menuItemElementEnabled".

Tools:

  • DumpRenderTree/win/DumpRenderTree.cpp:

(setWebPreferencesForTestOptions):
Recognize test option "enableMenuItemElement".

LayoutTests:

  • platform/win/TestExpectations:

Remove "failure" line.

9:12 AM Changeset in webkit [229577] by commit-queue@webkit.org
  • 2 edits
    1 copy
    1 add in trunk/LayoutTests

LayoutTests/http/tests/navigation/page-cache-iframe-provisional-load.html fails with async policy delegate
https://bugs.webkit.org/show_bug.cgi?id=183386

Patch by Danyao Wang <danyao@chromium.org> on 2018-03-13
Reviewed by Chris Dumez.

This test relies on the happenstance that with sync poicy decision, the subframe transitions
to FrameLoadProvisional before main frame navigation is committed. With async delegate,
policy checks for the main frame and subframe are interleaved. When the main frame policy
decision is received, it cancels the subframe check. So the page ends up being cached when
navigating away. This is working as intended.

  • http/tests/navigation/page-cache-iframe-provisional-load-async-delegates-expected.txt: Added.
  • http/tests/navigation/page-cache-iframe-provisional-load-async-delegates.html: Copied from LayoutTests/http/tests/navigation/page-cache-iframe-provisional-load.html.

Add a new version of the test that forces async policy delegate.

  • http/tests/navigation/page-cache-iframe-provisional-load.html:

Update test to sequence main frame navigation after start of provisional navigation in subframe.

6:44 AM Changeset in webkit [229576] by fred.wang@free.fr
  • 10 edits in trunk/LayoutTests

Rewrite frameset-flattening-simple to make expectation clearer
https://bugs.webkit.org/show_bug.cgi?id=183129

The description of fast/frames/flattening/frameset-flattening-simple.html says that the
iframe should be 800px wide and should not have any scrollbars. However, it is a bit
difficult to know the size when checking the test visually. Moreover, the scrollbars of the
main frame are visible, which makes things a bit confusing and may be the cause of bug 71655
on GTK.

Patch by Frederic Wang <fwang@igalia.com> on 2018-03-13
Reviewed by Javier Fernandez.

  • fast/frames/flattening/frameset-flattening-simple.html: Put the frame inside a 200x300

frameset cell and set its width to 300px. The frame should be a 300x300 square when it is
flattened (test passes) and a 200x300 rectangle when it is not (test fails). That's easier
to verify visually. That also avoids scrollbars on the main frame.

  • platform/gtk/TestExpectations: Attempt to remove flacky expectation.
  • platform/gtk/fast/frames/flattening/frameset-flattening-simple-expected.png: Update.
  • platform/gtk/fast/frames/flattening/frameset-flattening-simple-expected.txt: Ditto.
  • platform/ios/fast/frames/flattening/frameset-flattening-simple-expected.txt: Ditto.
  • platform/mac-wk2/fast/frames/flattening/frameset-flattening-simple-expected.txt: Ditto.
  • platform/mac/fast/frames/flattening/frameset-flattening-simple-expected.png: Ditto.
  • platform/mac/fast/frames/flattening/frameset-flattening-simple-expected.txt: Ditto.
  • platform/win/fast/frames/flattening/frameset-flattening-simple-expected.txt: Ditto.
1:56 AM Changeset in webkit [229575] by jiewen_tan@apple.com
  • 3 edits in trunk/Source/WebKit

Soft-link LocalAuthentication.Framework
https://bugs.webkit.org/show_bug.cgi?id=183587
<rdar://problem/38219763>

Reviewed by Brian Burg.

  • UIProcess/CredentialManagement/cocoa/WebCredentialsMessengerProxyCocoa.mm:

(WebKit::WebCredentialsMessengerProxy::platformIsUserVerifyingPlatformAuthenticatorAvailable):

  • WebKit.xcodeproj/project.pbxproj:
Note: See TracTimeline for information about the timeline view.