WebKit-https.git
2 years agoTest262-Runner: Add base module to the local deps - unicore/Exact.pl
commit-queue@webkit.org [Mon, 7 May 2018 21:06:34 +0000 (21:06 +0000)]
Test262-Runner: Add base module to the local deps - unicore/Exact.pl
https://bugs.webkit.org/show_bug.cgi?id=185390

Patch by Leo Balter <leonardo.balter@gmail.com> on 2018-05-07
Reviewed by Michael Saboff.

* Scripts/test262/local/lib/perl5/unicore/Exact.pl: Added.

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

2 years agoUse a dark gray for system preview bbackground
dino@apple.com [Mon, 7 May 2018 21:00:17 +0000 (21:00 +0000)]
Use a dark gray for system preview bbackground
https://bugs.webkit.org/show_bug.cgi?id=185391
<rdar://problem/40035120>

Reviewed by Eric Carlson.

Throw some darker shade at this view.

* UIProcess/ios/WKSystemPreviewView.mm:
(-[WKSystemPreviewView web_initWithFrame:webView:]):

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

2 years agoLayout Test webrtc/addICECandidate-closed.html is a flaky failure
youenn@apple.com [Mon, 7 May 2018 20:48:36 +0000 (20:48 +0000)]
Layout Test webrtc/addICECandidate-closed.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=185384

Reviewed by Eric Carlson.

Given that we are calling addIceCandidate and close the peer connection,
addIceCandidate might throw an error sometimes.
Catch the exception to make the test output stable.

* webrtc/addICECandidate-closed.html:

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

2 years agoCheck for com.apple.datamigrator before declaring simulators booted
jbedard@apple.com [Mon, 7 May 2018 20:08:16 +0000 (20:08 +0000)]
Check for com.apple.datamigrator before declaring simulators booted
https://bugs.webkit.org/show_bug.cgi?id=185315
<rdar://problem/39986261>

Reviewed by David Kilzer.

* Scripts/webkitdirs.pm:
(waitUntilProcessNotRunning): Wait until a process is not found.
(relaunchIOSSimulator): Wait until com.apple.datamigrator stops running to declare
a simulator booted.
* Scripts/webkitpy/common/system/executive_mock.py:
(MockExecutive2.__init__): Define _running_pids.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager.initialize_devices): Call wait_until_data_migration_is_done before
declaring that devices have been booted, increase the timeout since data migration will frequently
take longer than 60 seconds, especially with multiple simulators booting.
(SimulatedDeviceManager.swap): Ditto.
(SimulatedDeviceManager):
(SimulatedDeviceManager.wait_until_data_migration_is_done): Wait until there are no com.apple.datamigrator
processes running.

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

2 years ago[Win] Add missing methods to WebChromeClient
don.olmstead@sony.com [Mon, 7 May 2018 19:42:54 +0000 (19:42 +0000)]
[Win] Add missing methods to WebChromeClient
https://bugs.webkit.org/show_bug.cgi?id=185325

Reviewed by Brent Fulgham.

* WebProcess/WebCoreSupport/WebChromeClient.h:

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

2 years agoASSERT(!childItemWithTarget(child->target())) is hit in HistoryItem::addChildItem()
cdumez@apple.com [Mon, 7 May 2018 18:55:15 +0000 (18:55 +0000)]
ASSERT(!childItemWithTarget(child->target())) is hit in HistoryItem::addChildItem()
https://bugs.webkit.org/show_bug.cgi?id=185322

Reviewed by Geoff Garen.

LayoutTests/imported/w3c:

Rebaseline layout tests due to frame name changes.

* web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/001-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/003-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/navigation_unload_data_url-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/navigating-across-documents/navigation_unload_same_origin-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/001-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/002-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/003-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/004-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/005-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/unload/003-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/unload/004-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/unload/007-expected.txt:
* web-platform-tests/html/browsers/browsing-the-web/unloading-documents/unload/009-expected.txt:

Source/WebCore:

We generate unique names for Frame to be used in HistoryItem. Those names not only
need to be unique, they also need to be repeatable to avoid layout tests flakiness
and for things like restoring form state from a HistoryItem.

The previously generated frame names were relying on the Frame's index among a
parent Frame's children. The issue was that we could end up with duplicate names
because one could insert a Frame *before* an existing one. This is because the code
would not take care of updating existing Frames' unique name on frame tree mutation.

Updating frame tree names on mutation would be inefficient and is also not necessary.
The approach chosen in this patch is to stop using the Frame's index and instead rely
on an increasing counter stored on the top-frame's FrameTree. To make the names
repeatable, we reset the counter on page navigation.

* page/Frame.cpp:
(WebCore::Frame::setDocument):
* page/FrameTree.cpp:
(WebCore::FrameTree::uniqueChildName const):
(WebCore::FrameTree::generateUniqueName const):
* page/FrameTree.h:
(WebCore::FrameTree::resetFrameIdentifiers):

LayoutTests:

Rebaseline layout tests due to frame name changes.

* applicationmanifest/display-mode-subframe-expected.txt:
* contentfiltering/allow-after-add-data-expected.txt:
* contentfiltering/allow-after-finished-adding-data-expected.txt:
* contentfiltering/allow-after-response-expected.txt:
* contentfiltering/allow-after-will-send-request-expected.txt:
* contentfiltering/allow-never-expected.txt:
* contentfiltering/block-after-add-data-expected.txt:
* contentfiltering/block-after-add-data-then-allow-unblock-expected.txt:
* contentfiltering/block-after-add-data-then-deny-unblock-expected.txt:
* contentfiltering/block-after-finished-adding-data-expected.txt:
* contentfiltering/block-after-finished-adding-data-then-allow-unblock-expected.txt:
* contentfiltering/block-after-finished-adding-data-then-deny-unblock-expected.txt:
* contentfiltering/block-after-response-expected.txt:
* contentfiltering/block-after-response-then-allow-unblock-expected.txt:
* contentfiltering/block-after-response-then-deny-unblock-expected.txt:
* contentfiltering/block-after-will-send-request-expected.txt:
* contentfiltering/block-after-will-send-request-then-allow-unblock-expected.txt:
* contentfiltering/block-after-will-send-request-then-deny-unblock-expected.txt:
* contentfiltering/block-never-expected.txt:
* fast/dom/Geolocation/callback-to-deleted-context-expected.txt:
* fast/dom/Geolocation/disconnected-frame-expected.txt:
* fast/dom/Geolocation/disconnected-frame-permission-denied-expected.txt:
* fast/dom/Window/messageevent-source-postmessage-expected.txt:
* fast/dom/Window/messageevent-source-postmessage-reified-expected.txt:
* fast/dom/javascript-url-crash-function-expected.txt:
* fast/encoding/meta-overrules-auto-expected.txt:
* fast/events/before-unload-forbidden-navigation-expected.txt:
* fast/events/before-unload-in-subframe-expected.txt:
* fast/events/before-unload-with-subframes-expected.txt:
* fast/events/focusingUnloadedFrame-expected.txt:
* fast/events/onloadFrameCrash-expected.txt:
* fast/events/onunload-not-on-body-expected.txt:
* fast/events/pageshow-pagehide-expected.txt:
* fast/events/stop-load-in-unload-handler-using-document-write-expected.txt:
* fast/events/stop-load-in-unload-handler-using-window-stop-expected.txt:
* fast/forms/form-and-frame-interaction-retains-values-expected.txt:
* fast/frames/crash-when-child-iframe-forces-layout-during-unload-and-sibling-frame-has-mediaquery-expected.txt:
* fast/frames/frame-element-name-expected.txt:
* fast/frames/frame-src-attribute-expected.txt:
* fast/frames/frame-unload-crash-expected.txt:
* fast/frames/iframe-reparenting-unique-name-expected.txt:
* fast/frames/iframe-set-inner-html-expected.txt:
* fast/frames/layout-after-destruction-expected.txt:
* fast/frames/long-names-in-nested-subframes-expected.txt:
* fast/frames/page-unload-document-open-expected.txt:
* fast/frames/reparent-in-unload-contentdocument-expected.txt:
* fast/frames/sandboxed-iframe-noscript-expected.txt:
* fast/frames/sandboxed-iframe-storage-expected.txt:
* fast/frames/srcdoc/setting-src-does-nothing-expected.txt:
* fast/frames/srcdoc/srcdoc-can-navigate-expected.txt:
* fast/frames/srcdoc/srcdoc-loads-content-expected.txt:
* fast/history/back-from-page-with-focused-iframe-expected.txt:
* fast/history/history-back-initial-vs-final-url-expected.txt:
* fast/history/redirect-via-iframe-expected.txt:
* fast/loader/child-frame-add-after-back-forward-expected.txt:
* fast/loader/dynamic-iframe-extra-back-forward-item-expected.txt:
* fast/loader/fragment-navigation-base-blank-expected.txt:
* fast/loader/frame-location-change-not-added-to-history-expected.txt:
* fast/loader/frame-src-change-added-to-history-expected.txt:
* fast/loader/frame-src-change-not-added-to-history-expected.txt:
* fast/loader/frames-with-unload-handlers-in-page-cache-expected.txt:
* fast/loader/grandparent-completion-starts-redirect-expected.txt:
* fast/loader/iframe-meta-refresh-base-blank-expected.txt:
* fast/loader/iframe-set-location-base-blank-expected.txt:
* fast/loader/inner-iframe-loads-data-url-into-parent-on-unload-crash-async-delegate-expected.txt:
* fast/loader/inner-iframe-loads-data-url-into-parent-on-unload-crash-expected.txt:
* fast/loader/page-dismissal-modal-dialogs-expected.txt:
* fast/loader/ping-error-expected.txt:
* fast/loader/plain-text-document-expected.txt:
* fast/loader/refresh-iframe-base-blank-expected.txt:
* fast/loader/stateobjects/pushstate-frequency-iframe-expected.txt:
* fast/loader/stateobjects/pushstate-in-iframe-expected.txt:
* fast/loader/stateobjects/replacestate-frequency-iframe-expected.txt:
* fast/loader/stateobjects/replacestate-in-iframe-expected.txt:
* fast/loader/stop-provisional-loads-expected.txt:
* fast/loader/subframe-removes-itself-expected.txt:
* fast/loader/subframe-self-close-expected.txt:
* fast/loader/unload-hyperlink-targeted-expected.txt:
* fast/parser/double-write-from-closed-iframe-expected.txt:
* fast/parser/iframe-sets-parent-to-javascript-url-expected.txt:
* fast/parser/javascript-url-compat-mode-expected.txt:
* fast/parser/move-during-parsing-expected.txt:
* fast/parser/noscript-with-javascript-disabled-expected.txt:
* fast/parser/pre-html5-parser-quirks-expected.txt:
* fast/preloader/iframe-srcdoc-expected.txt:
* fast/tokenizer/text-plain-expected.txt:
* fast/xmlhttprequest/xmlhttprequest-no-file-access-expected.txt:
* fast/xsl/xslt-text-expected.txt:
* http/tests/appcache/x-frame-options-prevents-framing-expected.txt:
* http/tests/contentdispositionattachmentsandbox/referer-header-stripped-expected.txt:
* http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-always-expected.txt:
* http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-default-expected.txt:
* http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-never-expected.txt:
* http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-no-referrer-expected.txt:
* http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-no-referrer-when-downgrade-expected.txt:
* http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-origin-expected.txt:
* http/tests/contentdispositionattachmentsandbox/referer-header-stripped-with-meta-referer-unsafe-url-expected.txt:
* http/tests/cookies/same-site/fetch-after-navigating-iframe-in-cross-origin-page-expected.txt:
* http/tests/cookies/same-site/fetch-in-cross-origin-iframe-expected.txt:
* http/tests/cookies/same-site/fetch-in-cross-origin-service-worker-expected.txt:
* http/tests/cookies/same-site/fetch-in-same-origin-service-worker-expected.txt:
* http/tests/from-origin/document-from-origin-same-accepted-expected.txt:
* http/tests/from-origin/document-from-origin-same-blocked-expected.txt:
* http/tests/from-origin/document-from-origin-same-site-accepted-expected.txt:
* http/tests/from-origin/document-from-origin-same-site-blocked-expected.txt:
* http/tests/from-origin/document-nested-from-origin-same-accepted-expected.txt:
* http/tests/from-origin/document-nested-from-origin-same-blocked-expected.txt:
* http/tests/from-origin/fetch-data-iframe-from-origin-same-blocked-expected.txt:
* http/tests/from-origin/fetch-iframe-from-origin-same-accepted-expected.txt:
* http/tests/from-origin/fetch-iframe-from-origin-same-blocked-expected.txt:
* http/tests/from-origin/redirect-document-from-origin-same-blocked-expected.txt:
* http/tests/from-origin/sandboxed-sub-frame-from-origin-same-blocked-expected.txt:
* http/tests/from-origin/sandboxed-sub-frame-nested-cross-origin-from-origin-same-blocked-expected.txt:
* http/tests/from-origin/sandboxed-sub-frame-nested-same-origin-from-origin-same-blocked-expected.txt:
* http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt:
* http/tests/loading/basic-auth-remove-credentials-expected.txt:
* http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt:
* http/tests/loading/basic-credentials-sent-automatically-expected.txt:
* http/tests/loading/pdf-commit-load-callbacks-expected.txt:
* http/tests/loading/redirect-with-no-location-crash-expected.txt:
* http/tests/loading/server-redirect-for-provisional-load-caching-expected.txt:
* http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt:
* http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt:
* http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials-expected.txt:
* http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt:
* http/tests/misc/last-modified-parsing-expected.txt:
* http/tests/misc/policy-delegate-called-twice-expected.txt:
* http/tests/misc/redirect-to-external-url-expected.txt:
* http/tests/misc/webtiming-origins-expected.txt: Removed.
* http/tests/navigation/back-to-slow-frame-expected.txt:
* http/tests/navigation/forward-and-cancel-expected.txt:
* http/tests/navigation/image-load-in-subframe-unload-handler-expected.txt:
* http/tests/navigation/lockedhistory-iframe-expected.txt:
* http/tests/navigation/post-frames-expected.txt:
* http/tests/navigation/reload-subframe-frame-expected.txt:
* http/tests/navigation/reload-subframe-iframe-expected.txt:
* http/tests/navigation/reload-subframe-object-expected.txt:
* http/tests/preload/download_resources_from_header_iframe-expected.txt:
* http/tests/preload/download_resources_from_invalid_headers-expected.txt:
* http/tests/quicklook/at-import-stylesheet-blocked-expected.txt:
* http/tests/quicklook/cross-origin-iframe-blocked-expected.txt:
* http/tests/quicklook/document-domain-is-empty-string-expected.txt:
* http/tests/quicklook/external-stylesheet-blocked-expected.txt:
* http/tests/quicklook/hide-referer-on-navigation-expected.txt:
* http/tests/quicklook/rtf-document-domain-is-empty-string-expected.txt:
* http/tests/quicklook/same-origin-xmlhttprequest-allowed-expected.txt:
* http/tests/quicklook/top-navigation-blocked-expected.txt:
* http/tests/resourceLoadStatistics/add-blocking-to-redirect-expected.txt:
* http/tests/resourceLoadStatistics/add-partitioning-to-redirect-expected.txt:
* http/tests/resourceLoadStatistics/non-prevalent-resources-can-access-cookies-in-a-third-party-context-expected.txt:
* http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-deletion-expected.txt:
* http/tests/resourceLoadStatistics/partitioned-and-unpartitioned-cookie-with-partitioning-timeout-expected.txt:
* http/tests/resourceLoadStatistics/partitioned-cookies-with-and-without-user-interaction-expected.txt:
* http/tests/resourceLoadStatistics/remove-blocking-in-redirect-expected.txt:
* http/tests/resourceLoadStatistics/remove-partitioning-in-redirect-expected.txt:
* http/tests/resourceLoadStatistics/strip-referrer-to-origin-for-prevalent-subresource-redirects-expected.txt:
* http/tests/resourceLoadStatistics/strip-referrer-to-origin-for-prevalent-subresource-requests-expected.txt:
* http/tests/resourceLoadStatistics/third-party-cookie-with-and-without-user-interaction-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-in-body-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-allow-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-multiple-headers-conflict-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-allow-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt:
* http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
* http/tests/security/aboutBlank/xss-DENIED-navigate-opener-document-write-expected.txt:
* http/tests/security/aboutBlank/xss-DENIED-navigate-opener-javascript-url-expected.txt:
* http/tests/security/aboutBlank/xss-DENIED-set-opener-expected.txt:
* http/tests/security/appcache-in-private-browsing-expected.txt:
* http/tests/security/appcache-switching-private-browsing-expected.txt:
* http/tests/security/canvas-cors-with-two-hosts-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-in-meta-element-ignored-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-in-report-only-ignored-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-allow-same-origin-sandboxed-cross-url-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-none-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-self-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-star-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-cross-url-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-none-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-self-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-star-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-same-url-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-sandboxed-cross-url-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-none-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-self-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-star-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-cross-url-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-none-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-self-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-star-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-same-in-same-url-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-none-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-protocolless-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-self-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-crossorigin-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-star-allow-sameorigin-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-allow-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-url-block-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-blocked-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-in-enforced-policy-and-not-in-report-only-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-invalidnonce-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/plugintypes-invalid-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/plugintypes-url-01-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/plugintypes-url-02-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy2-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-in-enforced-policy-and-not-in-report-only-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scripthash-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-in-enforced-policy-and-not-in-report-only-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/scriptnonce-invalidnonce-expected.txt:
* http/tests/security/contentSecurityPolicy/1.1/securitypolicyviolation-block-image-https-expected.txt:
* http/tests/security/contentSecurityPolicy/WebAssembly-blocked-in-subframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/data-url-iframe-in-main-frame-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-iframe-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-iframe-in-main-frame-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-enforced-and-report-policies-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-inherited-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-javascript-url-iframe-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-xslt-document-in-iframe-with-inherited-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-plugin-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-iframe-with-inherited-policy-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-synchronous-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/secure-image-after-upgrade-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/block-all-mixed-content/secure-image-after-upgrade-redirect-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/directive-parsing-01-expected.txt:
* http/tests/security/contentSecurityPolicy/directive-parsing-02-expected.txt:
* http/tests/security/contentSecurityPolicy/directive-parsing-03-expected.txt:
* http/tests/security/contentSecurityPolicy/directive-parsing-04-expected.txt:
* http/tests/security/contentSecurityPolicy/directive-parsing-05-expected.txt:
* http/tests/security/contentSecurityPolicy/directive-parsing-multiple-headers-expected.txt:
* http/tests/security/contentSecurityPolicy/eval-blocked-in-subframe-expected.txt:
* http/tests/security/contentSecurityPolicy/object-src-none-allowed-expected.txt:
* http/tests/security/contentSecurityPolicy/object-src-none-blocked-expected.txt:
* http/tests/security/contentSecurityPolicy/report-status-code-zero-when-using-https-expected.txt:
* http/tests/security/contentSecurityPolicy/report-uri-from-child-frame-expected.txt:
* http/tests/security/contentSecurityPolicy/script-loads-with-img-src-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-none-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-none-inline-event-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-parsing-implicit-and-explicit-port-number-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-redirect-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-self-blocked-01-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-self-blocked-02-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-self-blocked-03-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-self-expected.txt:
* http/tests/security/contentSecurityPolicy/script-src-star-cross-scheme-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-01-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-02-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-03-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-04-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-05-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-06-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-07-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-08-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-09-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-10-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-deprecated-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-no-semicolon-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-nonascii-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-none-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-paths-01-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-paths-02-expected.txt:
* http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/proper-nested-upgrades-expected.txt:
* http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-insecure-css-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-redirect-http-to-https-script-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-redirect-https-to-http-script-in-iframe-expected.txt:
* http/tests/security/contentSecurityPolicy/xsl-redirect-allowed-expected.txt:
* http/tests/security/contentSecurityPolicy/xsl-redirect-allowed2-expected.txt:
* http/tests/security/cookies/first-party-cookie-allow-xslt-expected.txt:
* http/tests/security/cookies/third-party-cookie-blocking-redirect-expected.txt:
* http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.txt:
* http/tests/security/cross-frame-access-callback-explicit-domain-DENY-expected.txt:
* http/tests/security/cross-frame-access-delete-expected.txt:
* http/tests/security/cross-frame-access-frameelement-expected.txt:
* http/tests/security/cross-frame-access-history-put-expected.txt: Removed.
* http/tests/security/cross-frame-access-location-put-expected.txt:
* http/tests/security/cross-frame-access-private-browsing-expected.txt:
* http/tests/security/cross-origin-appcache-allowed-expected.txt:
* http/tests/security/cross-origin-appcache-expected.txt:
* http/tests/security/cross-origin-css-primitive-expected.txt:
* http/tests/security/cross-origin-indexeddb-allowed-expected.txt:
* http/tests/security/cross-origin-indexeddb-expected.txt:
* http/tests/security/cross-origin-plugin-allowed-expected.txt:
* http/tests/security/cross-origin-plugin-expected.txt:
* http/tests/security/cross-origin-plugin-private-browsing-toggled-allowed-expected.txt:
* http/tests/security/cross-origin-plugin-private-browsing-toggled-expected.txt:
* http/tests/security/cross-origin-session-storage-allowed-expected.txt:
* http/tests/security/cross-origin-session-storage-third-party-blocked-expected.txt:
* http/tests/security/cross-origin-websql-allowed-expected.txt:
* http/tests/security/cross-origin-websql-expected.txt:
* http/tests/security/cross-origin-worker-indexeddb-allowed-expected.txt:
* http/tests/security/cross-origin-worker-indexeddb-expected.txt:
* http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
* http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-expected.txt:
* http/tests/security/dataURL/xss-DENIED-to-data-url-in-foreign-domain-subframe-location-change-expected.txt:
* http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
* http/tests/security/frameNavigation/xss-ALLOWED-targeted-subframe-navigation-change-expected.txt:
* http/tests/security/frameNavigation/xss-DENIED-plugin-navigation-expected.txt:
* http/tests/security/frameNavigation/xss-DENIED-targeted-link-navigation-expected.txt:
* http/tests/security/history-pushState-replaceState-from-sandboxed-iframe-expected.txt:
* http/tests/security/http-0.9/default-port-plugin-blocked-expected.txt:
* http/tests/security/http-0.9/default-port-script-blocked-expected.txt:
* http/tests/security/http-0.9/iframe-blocked-expected.txt:
* http/tests/security/http-0.9/image-on-HTTP-0.9-default-port-page-allowed-expected.txt:
* http/tests/security/http-0.9/image-on-HTTP-0.9-page-blocked-expected.txt:
* http/tests/security/http-0.9/sandbox-should-not-persist-on-navigation-expected.txt:
* http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-2-level-expected.txt:
* http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-to-javscript-url-expected.txt:
* http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-from-javscript-url-expected.txt:
* http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level-expected.txt:
* http/tests/security/javascriptURL/xss-DENIED-from-javascript-url-in-foreign-domain-subframe-expected.txt:
* http/tests/security/javascriptURL/xss-DENIED-to-javascript-url-in-foreign-domain-subframe-expected.txt:
* http/tests/security/mixedContent/about-blank-iframe-in-main-frame-expected.txt:
* http/tests/security/mixedContent/blob-url-in-iframe-expected.txt:
* http/tests/security/mixedContent/data-url-iframe-in-main-frame-expected.txt:
* http/tests/security/mixedContent/data-url-script-in-iframe-expected.txt:
* http/tests/security/mixedContent/empty-url-plugin-in-frame-expected.txt:
* http/tests/security/mixedContent/insecure-css-in-iframe-expected.txt:
* http/tests/security/mixedContent/insecure-form-in-iframe-expected.txt:
* http/tests/security/mixedContent/insecure-iframe-in-iframe-expected.txt:
* http/tests/security/mixedContent/insecure-iframe-in-main-frame-expected.txt:
* http/tests/security/mixedContent/insecure-image-in-iframe-expected.txt:
* http/tests/security/mixedContent/redirect-http-to-https-iframe-in-main-frame-expected.txt:
* http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe-expected.txt:
* http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame-expected.txt:
* http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe-expected.txt:
* http/tests/security/private-browsing-http-auth-expected.txt:
* http/tests/security/referrer-policy-always-expected.txt:
* http/tests/security/referrer-policy-default-expected.txt:
* http/tests/security/referrer-policy-https-always-expected.txt:
* http/tests/security/referrer-policy-https-default-expected.txt:
* http/tests/security/referrer-policy-https-never-expected.txt:
* http/tests/security/referrer-policy-https-no-referrer-expected.txt:
* http/tests/security/referrer-policy-https-no-referrer-when-downgrade-expected.txt:
* http/tests/security/referrer-policy-https-origin-expected.txt:
* http/tests/security/referrer-policy-https-unsafe-url-expected.txt:
* http/tests/security/referrer-policy-invalid-expected.txt:
* http/tests/security/referrer-policy-never-expected.txt:
* http/tests/security/referrer-policy-no-referrer-expected.txt:
* http/tests/security/referrer-policy-no-referrer-when-downgrade-expected.txt:
* http/tests/security/referrer-policy-origin-expected.txt:
* http/tests/security/referrer-policy-redirect-expected.txt:
* http/tests/security/referrer-policy-rel-noreferrer-expected.txt:
* http/tests/security/same-origin-appcache-blocked-expected.txt:
* http/tests/security/same-origin-document-domain-storage-allowed-expected.txt:
* http/tests/security/same-origin-storage-blocked-expected.txt:
* http/tests/security/same-origin-websql-blocked-expected.txt:
* http/tests/security/sandboxed-iframe-document-cookie-expected.txt:
* http/tests/security/sandboxed-iframe-geolocation-getCurrentPosition-expected.txt:
* http/tests/security/sandboxed-iframe-geolocation-watchPosition-expected.txt:
* http/tests/security/srcdoc-inherits-referrer-expected.txt:
* http/tests/security/srcdoc-inherits-referrer-for-forms-expected.txt:
* http/tests/security/storage-blocking-loosened-local-storage-expected.txt:
* http/tests/security/storage-blocking-loosened-plugin-expected.txt:
* http/tests/security/storage-blocking-loosened-private-browsing-plugin-expected.txt:
* http/tests/security/storage-blocking-loosened-websql-expected.txt:
* http/tests/security/storage-blocking-strengthened-local-storage-expected.txt:
* http/tests/security/storage-blocking-strengthened-plugin-expected.txt:
* http/tests/security/storage-blocking-strengthened-private-browsing-plugin-expected.txt:
* http/tests/security/storage-blocking-strengthened-websql-expected.txt:
* http/tests/security/strip-referrer-to-origin-for-third-party-redirects-in-private-mode-expected.txt:
* http/tests/security/strip-referrer-to-origin-for-third-party-requests-in-private-mode-expected.txt:
* http/tests/security/window-properties-clear-domain-expected.txt:
* http/tests/security/window-properties-clear-port-expected.txt:
* http/tests/security/window-properties-pass-expected.txt:
* http/tests/security/xss-DENIED-assign-location-href-javascript-expected.txt:
* http/tests/security/xss-DENIED-defineProperty-expected.txt:
* http/tests/security/xssAuditor/faux-script1-expected.txt:
* http/tests/security/xssAuditor/faux-script2-expected.txt:
* http/tests/security/xssAuditor/faux-script3-expected.txt:
* http/tests/security/xssAuditor/malformed-HTML-expected.txt:
* http/tests/security/xssAuditor/non-block-javascript-url-frame-expected.txt:
* http/tests/security/xssAuditor/reflection-in-path-expected.txt:
* http/tests/security/xssAuditor/script-tag-with-callbacks-expected.txt:
* http/tests/security/xssAuditor/svg-animate-expected.txt:
* http/tests/ssl/media-stream/get-user-media-different-host-expected.txt:
* http/tests/ssl/media-stream/get-user-media-nested-expected.txt:
* http/tests/ssl/media-stream/get-user-media-secure-connection-expected.txt:
* http/tests/ssl/ping-with-unsafe-redirect-expected.txt:
* http/tests/storageAccess/deny-storage-access-under-opener-expected.txt:
* http/tests/storageAccess/grant-storage-access-under-opener-expected.txt:
* http/tests/storageAccess/request-and-grant-storage-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-non-recent-user-interaction-and-try-access-from-right-frame-expected.txt:
* http/tests/storageAccess/request-and-grant-storage-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-non-recent-user-interaction-but-try-access-from-wrong-frame-expected.txt:
* http/tests/xmlhttprequest/access-control-sandboxed-iframe-allow-expected.txt:
* http/tests/xmlhttprequest/access-control-sandboxed-iframe-allow-origin-null-expected.txt:
* http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-expected.txt:
* http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-without-wildcard-expected.txt:
* http/tests/xmlhttprequest/frame-load-cancelled-abort-expected.txt:
* http/tests/xmlhttprequest/frame-unload-abort-crash-expected.txt:
* http/tests/xmlhttprequest/origin-exact-matching-expected.txt:
* http/tests/xmlhttprequest/uri-resolution-opera-open-004-expected.txt:
* http/tests/xmlhttprequest/uri-resolution-opera-open-005-expected.txt:
* http/tests/xmlhttprequest/uri-resolution-opera-open-006-expected.txt:
* http/tests/xmlhttprequest/uri-resolution-opera-open-007-expected.txt:
* http/tests/xmlhttprequest/uri-resolution-opera-open-008-expected.txt:
* http/tests/xmlhttprequest/uri-resolution-opera-open-009-expected.txt:
* http/tests/xmlhttprequest/uri-resolution-opera-open-010-expected.txt:
* http/tests/xsl/xslt-transform-with-javascript-disabled-expected.txt:
* imported/blink/fast/plugins/empty-url-object-expected.txt:
* loader/stateobjects/pushstate-size-iframe-expected.txt:
* loader/stateobjects/replacestate-size-iframe-expected.txt:
* media/auto-play-in-sandbox-with-allow-scripts-expected.txt:
* platform/ios-wk1/http/tests/quicklook/top-navigation-blocked-expected.txt:
* platform/ios-wk1/imported/w3c/web-platform-tests/html/browsers/browsing-the-web/unloading-documents/001-expected.txt:
* platform/ios/http/tests/quicklook/at-import-stylesheet-blocked-expected.txt:
* platform/ios/http/tests/quicklook/cross-origin-iframe-blocked-expected.txt:
* platform/ios/http/tests/quicklook/document-domain-is-empty-string-expected.txt:
* platform/ios/http/tests/quicklook/external-stylesheet-blocked-expected.txt:
* platform/ios/http/tests/quicklook/hide-referer-on-navigation-expected.txt:
* platform/ios/http/tests/quicklook/top-navigation-blocked-expected.txt:
* platform/ios/quicklook/excel-expected.txt:
* platform/ios/quicklook/excel-legacy-expected.txt:
* platform/ios/quicklook/excel-macro-enabled-expected.txt:
* platform/ios/quicklook/powerpoint-expected.txt:
* platform/ios/quicklook/powerpoint-legacy-expected.txt:
* platform/ios/quicklook/word-expected.txt:
* platform/ios/quicklook/word-legacy-expected.txt:
* platform/ios/webarchive/loading/cache-expired-subresource-expected.txt:
* platform/mac-wk2/http/tests/security/cross-origin-plugin-expected.txt:
* platform/mac-wk2/http/tests/security/cross-origin-plugin-private-browsing-toggled-expected.txt:
* platform/mac-wk2/http/tests/security/storage-blocking-strengthened-plugin-expected.txt:
* platform/mac-wk2/http/tests/security/storage-blocking-strengthened-private-browsing-plugin-expected.txt:
* platform/mac-wk2/plugins/resize-from-plugin-expected.txt:
* platform/mac/fast/loader/webarchive-encoding-respected-expected.txt:
* platform/mac/webarchive/adopt-attribute-styled-body-webarchive-expected.txt:
* platform/mac/webarchive/loading/cache-expired-subresource-expected.txt:
* platform/mac/webarchive/test-duplicate-resources-expected.txt:
* platform/win/plugins/resize-from-plugin-expected.txt:
* platform/win/webarchive/loading/cache-expired-subresource-expected.txt:
* platform/wk2/fast/loader/fragment-navigation-base-blank-expected.txt:
* platform/wk2/fast/loader/iframe-meta-refresh-base-blank-expected.txt:
* platform/wk2/fast/loader/iframe-set-location-base-blank-expected.txt:
* platform/wk2/fast/loader/refresh-iframe-base-blank-expected.txt:
* platform/wk2/fast/loader/subframe-removes-itself-expected.txt:
* platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt:
* platform/wk2/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt:
* platform/wk2/http/tests/loading/basic-credentials-sent-automatically-expected.txt:
* platform/wk2/http/tests/loading/redirect-with-no-location-crash-expected.txt:
* platform/wk2/http/tests/loading/server-redirect-for-provisional-load-caching-expected.txt:
* platform/wk2/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt:
* platform/wk2/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt:
* platform/wk2/http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials-expected.txt:
* platform/wk2/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-in-body-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-allow-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-ignore-deny-meta-tag-parent-same-origin-deny-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-conflict-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-allow-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-multiple-headers-sameorigin-deny-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt:
* platform/wk2/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/data-url-iframe-in-main-frame-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-iframe-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-iframe-in-main-frame-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-enforced-and-report-policies-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-inherited-policy-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-javascript-url-iframe-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-xslt-document-in-iframe-with-inherited-policy-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-plugin-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-script-in-iframe-with-inherited-policy-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-asynchronous-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-xhr-synchronous-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/secure-image-after-upgrade-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/secure-image-after-upgrade-redirect-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/proper-nested-upgrades-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-insecure-css-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-redirect-http-to-https-script-in-iframe-expected.txt:
* platform/wk2/http/tests/security/contentSecurityPolicy/upgrade-insecure-requests/upgrade-redirect-https-to-http-script-in-iframe-expected.txt:
* platform/wk2/http/tests/security/http-0.9/iframe-blocked-expected.txt:
* platform/wk2/http/tests/security/mixedContent/about-blank-iframe-in-main-frame-expected.txt:
* platform/wk2/http/tests/security/mixedContent/data-url-iframe-in-main-frame-expected.txt:
* platform/wk2/http/tests/security/mixedContent/data-url-script-in-iframe-expected.txt:
* platform/wk2/http/tests/security/mixedContent/empty-url-plugin-in-frame-expected.txt:
* platform/wk2/http/tests/security/mixedContent/insecure-css-in-iframe-expected.txt:
* platform/wk2/http/tests/security/mixedContent/insecure-form-in-iframe-expected.txt:
* platform/wk2/http/tests/security/mixedContent/insecure-iframe-in-iframe-expected.txt:
* platform/wk2/http/tests/security/mixedContent/insecure-iframe-in-main-frame-expected.txt:
* platform/wk2/http/tests/security/mixedContent/insecure-image-in-iframe-expected.txt:
* platform/wk2/http/tests/security/mixedContent/redirect-http-to-https-iframe-in-main-frame-expected.txt:
* platform/wk2/http/tests/security/mixedContent/redirect-http-to-https-script-in-iframe-expected.txt:
* platform/wk2/http/tests/security/mixedContent/redirect-https-to-http-iframe-in-main-frame-expected.txt:
* platform/wk2/http/tests/security/mixedContent/redirect-https-to-http-script-in-iframe-expected.txt:
* platform/wk2/http/tests/security/xssAuditor/script-tag-with-callbacks-expected.txt:
* platform/wk2/webarchive/loading/javascript-url-iframe-crash-expected.txt:
* platform/wk2/webarchive/loading/mainresource-null-mimetype-crash-expected.txt:
* platform/wk2/webarchive/loading/missing-data-expected.txt:
* platform/wk2/webarchive/loading/object-expected.txt:
* platform/wk2/webarchive/loading/test-loading-archive-expected.txt:
* platform/wk2/webarchive/loading/test-loading-archive-subresource-null-mimetype-expected.txt:
* platform/wk2/webarchive/loading/video-in-webarchive-expected.txt:
* plugins/resize-from-plugin-expected.txt:
* quicklook/excel-expected.txt:
* quicklook/excel-legacy-expected.txt:
* quicklook/excel-macro-enabled-expected.txt:
* quicklook/keynote-09-expected.txt:
* quicklook/multi-sheet-numbers-09-expected.txt:
* quicklook/numbers-09-expected.txt:
* quicklook/pages-09-expected.txt:
* quicklook/powerpoint-expected.txt:
* quicklook/powerpoint-legacy-expected.txt:
* quicklook/word-expected.txt:
* quicklook/word-legacy-expected.txt:
* userscripts/user-script-all-frames-expected.txt:
* userscripts/user-script-top-frame-only-expected.txt:
* userscripts/user-style-all-frames-expected.txt:
* userscripts/user-style-top-frame-only-expected.txt:
* webarchive/loading/javascript-url-iframe-crash-expected.txt:
* webarchive/loading/mainresource-null-mimetype-crash-expected.txt:
* webarchive/loading/missing-data-expected.txt:
* webarchive/loading/object-expected.txt:
* webarchive/loading/test-loading-archive-expected.txt:
* webarchive/loading/test-loading-archive-subresource-null-mimetype-expected.txt:
* webarchive/loading/video-in-webarchive-expected.txt:

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

2 years agoREGRESSION (r229955): run-webkit-tests runs tests in skipped directories and subdirec...
dbates@webkit.org [Mon, 7 May 2018 18:32:46 +0000 (18:32 +0000)]
REGRESSION (r229955): run-webkit-tests runs tests in skipped directories and subdirectories of directory given on command line
https://bugs.webkit.org/show_bug.cgi?id=185054
<rdar://problem/39773209>

Reviewed by Ryosuke Niwa.

Fallback to MacPort.CURRENT_VERSION if we are not using a known named macOS and do not have Apple Additions.

Darwin-based ports have OS version-specific test expectations and are certified to support running tests using
the currently shipping OS by way of a hardcoded class variable CURRENT_VERSION. The run-webkit-tests script
depends on the OS version to find the applicable TestExpectations files to parse to compute the list of skipped
tests for the port.

* Scripts/webkitpy/port/mac.py:
(MacPort.__init__): Fall back to MacPort.CURRENT_VERSION if we are not using a known named macOS and do not
have Apple Additions.
* Scripts/webkitpy/port/mac_unittest.py:
(MacTest.test_factory_with_future_version): Added.
(MacTest.test_factory_with_future_version_and_apple_additions): Renamed from MacTest.test_factory_with_future_version()
and added code to use the mock Apple Additions so that running this code with- and without- the real Apple Additions
produces consistent results now that the Mac port's OS version falls back to MacPort.CURRENT_VERSION when Apple Additions
is absent.

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

2 years ago[EME][GStreamer] Fix wrong subsample parsing on r227067
commit-queue@webkit.org [Mon, 7 May 2018 18:27:25 +0000 (18:27 +0000)]
[EME][GStreamer] Fix wrong subsample parsing on r227067
https://bugs.webkit.org/show_bug.cgi?id=185382

Patch by Yacine Bandou <yacine.bandou_ext@softathome.com> on 2018-05-07
Reviewed by Philippe Normand.

The initialization of sampleIndex should be moved outside of the loop.
Without this patch we will have a bad log and the check of the subsample
count will be useless.

* platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp:
(webKitMediaClearKeyDecryptorDecrypt):

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

2 years agoAllow Web Touch events to timeout
megan_gardner@apple.com [Mon, 7 May 2018 18:16:15 +0000 (18:16 +0000)]
Allow Web Touch events to timeout
https://bugs.webkit.org/show_bug.cgi?id=185282

Reviewed by Tim Horton.

This is backwards, fixing.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::handleTouchEventSynchronously):

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

2 years ago[Win] LoggingWin is missing includes
don.olmstead@sony.com [Mon, 7 May 2018 18:07:28 +0000 (18:07 +0000)]
[Win] LoggingWin is missing includes
https://bugs.webkit.org/show_bug.cgi?id=185326

Reviewed by Per Arne Vollan.

* Platform/win/LoggingWin.cpp:

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

2 years agoCSP should be passed the referrer
dbates@webkit.org [Mon, 7 May 2018 17:52:34 +0000 (17:52 +0000)]
CSP should be passed the referrer
https://bugs.webkit.org/show_bug.cgi?id=185367

Reviewed by Per Arne Vollan.

Source/WebCore:

As a step towards formalizing a CSP delegate object and removing the dependencies
on ScriptExecutionContext and Frame, we should pass the document's referrer directly
instead of indirectly obtaining it from the ScriptExecutionContext or Frame used
to instantiate the ContentSecurityPolicy object.

* dom/Document.cpp:
(WebCore::Document::processHttpEquiv): Pass the document's referrer.
(WebCore::Document::initSecurityContext): Ditto.
(WebCore::Document::applyQuickLookSandbox): Ditto.
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::responseReceived): Ditto.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::didBeginDocument): Ditto.
* page/csp/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::copyStateFrom): We pass a null string for the referrer
to didReceiveHeader() as a placeholder since it requires the referrer be given to it. We
fix up the referrer (m_referrer) after copying all the policy headers.
(WebCore::ContentSecurityPolicy::didReceiveHeaders): Ditto.
(WebCore::ContentSecurityPolicy::didReceiveHeader): Modified to take a referrer and WTFMove()s
it into an instance variable (m_referrer).
(WebCore::ContentSecurityPolicy::reportViolation const): Modified to use the stored referrer.
* page/csp/ContentSecurityPolicy.h:
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::applyContentSecurityPolicyResponseHeaders): Pass a null string
for the referrer as a worker does not have a referrer.

Source/WebKit:

Pass the referrer through NetworkLoadChecker so that it can pass it to the ContentSecurityPolicy
object it instantiates.

* NetworkProcess/NetworkLoadChecker.cpp:
(WebKit::NetworkLoadChecker::NetworkLoadChecker):
(WebKit::NetworkLoadChecker::contentSecurityPolicy const):
* NetworkProcess/NetworkLoadChecker.h:
(WebKit::NetworkLoadChecker::create):
* NetworkProcess/NetworkResourceLoader.cpp:
* NetworkProcess/PingLoad.cpp:
(WebKit::PingLoad::PingLoad):

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

2 years agoAdd tests to ensure Same-Site cookies are included when performing a top-level redirect
dbates@webkit.org [Mon, 7 May 2018 17:47:52 +0000 (17:47 +0000)]
Add tests to ensure Same-Site cookies are included when performing a top-level redirect
https://bugs.webkit.org/show_bug.cgi?id=185235

Reviewed by Alex Christensen.

* http/tests/cookies/same-site/fetch-after-top-level-cross-origin-redirect-expected.txt: Added.
* http/tests/cookies/same-site/fetch-after-top-level-cross-origin-redirect.html: Added.
* http/tests/cookies/same-site/fetch-after-top-level-same-origin-redirect-expected.txt: Added.
* http/tests/cookies/same-site/fetch-after-top-level-same-origin-redirect.html: Added.
* http/tests/cookies/same-site/resources/fetch-after-top-level-cross-origin-redirect.php: Added.
* http/tests/cookies/same-site/resources/fetch-after-top-level-same-origin-redirect.php: Added.

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

2 years agoCSP should only notify Inspector to pause the debugger on the first policy to violate...
dbates@webkit.org [Mon, 7 May 2018 17:41:50 +0000 (17:41 +0000)]
CSP should only notify Inspector to pause the debugger on the first policy to violate a directive
https://bugs.webkit.org/show_bug.cgi?id=185364

Reviewed by Brent Fulgham.

Notify Web Inspector that a script was blocked on the first enforced CSP policy that it
violates.

A page can have more than one enforced Content Security Policy. Currently for inline
scripts, inline event handlers, JavaScript URLs, and eval() that are blocked by CSP
we notify Web Inspector that it was blocked for each CSP policy that blocked it. When
Web Inspector is notified it pauses script execution. It does not seem very meaningful
to pause script execution on the same script for each CSP policy that blocked it.
Therefore, only tell Web Inspector that a script was blocked for the first enforced CSP
policy that blocked it.

* page/csp/ContentSecurityPolicy.cpp:
(WebCore::ContentSecurityPolicy::allowJavaScriptURLs const):
(WebCore::ContentSecurityPolicy::allowInlineEventHandlers const):
(WebCore::ContentSecurityPolicy::allowInlineScript const):
(WebCore::ContentSecurityPolicy::allowEval const):

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

2 years agoSubstitute CrossOriginPreflightResultCache::clear() for CrossOriginPreflightResultCac...
dbates@webkit.org [Mon, 7 May 2018 17:38:25 +0000 (17:38 +0000)]
Substitute CrossOriginPreflightResultCache::clear() for CrossOriginPreflightResultCache::empty()
https://bugs.webkit.org/show_bug.cgi?id=185170

Reviewed by Per Arne Vollan.

Source/WebCore:

Rename CrossOriginPreflightResultCache::empty() to CrossOriginPreflightResultCache::clear() make
it consistent with the terminology we use in WebKit to signify a function that clears a collection.
A member function named "empty" is expected to return an instance of a class in its "empty state".
For example, StringImpl::empty() returns a StringImpl instance that represents the empty string.
However CrossOriginPreflightResultCache::empty() clears out the cache in-place. We should rename
this function to better describe its purpose.

* loader/CrossOriginPreflightResultCache.cpp:
(WebCore::CrossOriginPreflightResultCache::clear):
(WebCore::CrossOriginPreflightResultCache::empty): Deleted.
* loader/CrossOriginPreflightResultCache.h:

Source/WebKit:

* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::clearResourceCaches):
(WebKit::WebProcess::deleteWebsiteData):

Source/WebKitLegacy/mac:

* Misc/WebCache.mm:
(+[WebCache empty]):

Source/WebKitLegacy/win:

* WebCache.cpp:
(WebCache::empty):

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

2 years agoWebGL: Reset simulated values after validation fails
dino@apple.com [Mon, 7 May 2018 17:36:15 +0000 (17:36 +0000)]
WebGL: Reset simulated values after validation fails
https://bugs.webkit.org/show_bug.cgi?id=185363
<rdar://problem/39733417>

Reviewed by Anders Carlsson.

Source/WebCore:

While fixing a previous bug, I forgot to reset some values
when validation fails. This caused a bug where a subsequent
invalid call might use those values and escape detection.

Test: fast/canvas/webgl/index-validation-with-subsequent-draws.html

* html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::simulateVertexAttrib0): Reset the
sizes when validation fails.
* html/canvas/WebGLRenderingContextBase.h:

LayoutTests:

* fast/canvas/webgl/index-validation-with-subsequent-draws-expected.txt: Added.
* fast/canvas/webgl/index-validation-with-subsequent-draws.html: Added.

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

2 years agoSupport negative sw/sh values in createImageBitmap().
Ms2ger@igalia.com [Mon, 7 May 2018 17:20:41 +0000 (17:20 +0000)]
Support negative sw/sh values in createImageBitmap().
https://bugs.webkit.org/show_bug.cgi?id=184449

Reviewed by Dean Jackson.

LayoutTests/imported/w3c:

Update expectations.

* web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage-expected.txt:

Source/WebCore:

Tests: LayoutTests/imported/w3c/web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage.html
       LayoutTests/http/wpt/2dcontext/imagebitmap/createImageBitmap.html

* html/ImageBitmap.cpp:
(WebCore::ImageBitmap::createPromise): handle negative values per spec.

LayoutTests:

* http/wpt/2dcontext/imagebitmap/createImageBitmap-expected.txt: update test name
* http/wpt/2dcontext/imagebitmap/createImageBitmap.html: update expected result

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

2 years agoWeb Inspector: opt out of process swap on navigation if a Web Inspector frontend...
bburg@apple.com [Mon, 7 May 2018 17:10:34 +0000 (17:10 +0000)]
Web Inspector: opt out of process swap on navigation if a Web Inspector frontend is connected
https://bugs.webkit.org/show_bug.cgi?id=184861
<rdar://problem/39153768>

Reviewed by Timothy Hatcher.

Source/WebCore:

Notify the client of the current connection count whenever a frontend connects or disconnects.

Covered by new API test.

* inspector/InspectorClient.h:
(WebCore::InspectorClient::frontendCountChanged):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
(WebCore::InspectorController::disconnectAllFrontends):
* inspector/InspectorController.h:

Source/WebKit:

We need to track how many frontends are attached to the web page (both local and remote).
InspectorController propagates this out to WebKit via InspectorClient. This is then
kept in UIProcess as a member of WebPageProxy. When making a decision whether to use a
new process for a navigation, return early with "no" if any frontends are open for the
page being navigated.

* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::didChangeInspectorFrontendCount):
(WebKit::WebPageProxy::inspectorFrontendCount const):
* UIProcess/WebPageProxy.messages.in:
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::processForNavigation):
* WebProcess/WebCoreSupport/WebInspectorClient.cpp:
(WebKit::WebInspectorClient::frontendCountChanged):
* WebProcess/WebCoreSupport/WebInspectorClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::inspectorFrontendCountChanged):
* WebProcess/WebPage/WebPage.h:

Tools:

Add a new test that checks whether a new process is used for navigation when
an Inspector is shown. Also check that the behavior reverts to normal after
the Inspector has been closed.

* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:

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

2 years agoText track cue logging should include cue text
eric.carlson@apple.com [Mon, 7 May 2018 15:54:56 +0000 (15:54 +0000)]
Text track cue logging should include cue text
https://bugs.webkit.org/show_bug.cgi?id=185353
<rdar://problem/40003565>

Reviewed by Youenn Fablet.

No new tests, tested manually.

* html/track/VTTCue.cpp:
(WebCore::VTTCue::toJSONString const): Use toJSON.
(WebCore::VTTCue::toJSON const): New.
* html/track/VTTCue.h:

* platform/graphics/InbandTextTrackPrivateClient.h:
(WebCore::GenericCueData::toJSONString const): Log m_content.

* platform/graphics/iso/ISOVTTCue.cpp:
(WebCore::ISOWebVTTCue::toJSONString const): Log m_cueText.

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

2 years ago[WinCairo] Disable plugin api when building modern WebKit
don.olmstead@sony.com [Mon, 7 May 2018 13:36:14 +0000 (13:36 +0000)]
[WinCairo] Disable plugin api when building modern WebKit
https://bugs.webkit.org/show_bug.cgi?id=185312

Reviewed by Michael Catanzaro.

* Source/cmake/OptionsWin.cmake:

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

2 years ago[WTF] Embed default atomic string table in Thread
utatane.tea@gmail.com [Mon, 7 May 2018 05:24:59 +0000 (05:24 +0000)]
[WTF] Embed default atomic string table in Thread
https://bugs.webkit.org/show_bug.cgi?id=185349

Reviewed by Darin Adler.

Do not need to allocate AtomicStringTable separate from Thread
since the table's lifetime is completely the same as Thread.

This patch just embeds it as a data member of Thread.

* wtf/Threading.cpp:
(WTF::Thread::initializeInThread):
(WTF::Thread::didExit):
* wtf/Threading.h:
* wtf/text/AtomicStringTable.cpp:
(WTF::AtomicStringTable::create): Deleted.
(WTF::AtomicStringTable::destroy): Deleted.
* wtf/text/AtomicStringTable.h:

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

2 years ago[JSC] Remove "using namespace std;" from JSC, bmalloc, WTF
utatane.tea@gmail.com [Mon, 7 May 2018 02:46:40 +0000 (02:46 +0000)]
[JSC] Remove "using namespace std;" from JSC, bmalloc, WTF
https://bugs.webkit.org/show_bug.cgi?id=185362

Reviewed by Sam Weinig.

Source/bmalloc:

* bmalloc/Allocator.cpp:
* bmalloc/Deallocator.cpp:

Source/JavaScriptCore:

"namespace std" may include many names. It can conflict with names defined by our code,
and the other platform provided headers. For example, std::byte conflicts with Windows'
::byte.
This patch removes "using namespace std;" from JSC and bmalloc.

* API/JSClassRef.cpp:
(OpaqueJSClass::create):
* bytecode/Opcode.cpp:
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::newRegister):
* heap/Heap.cpp:
(JSC::Heap::updateAllocationLimits):
* interpreter/Interpreter.cpp:
* jit/JIT.cpp:
* parser/Parser.cpp:
* runtime/JSArray.cpp:
* runtime/JSLexicalEnvironment.cpp:
* runtime/JSModuleEnvironment.cpp:
* runtime/Structure.cpp:
* shell/DLLLauncherMain.cpp:
(getStringValue):
(applePathFromRegistry):
(appleApplicationSupportDirectory):
(copyEnvironmentVariable):
(prependPath):
(fatalError):
(directoryExists):
(modifyPath):
(getLastErrorString):
(wWinMain):

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

2 years ago[WTF] Use static initializers for WTF::Mutex and WTF::ThreadCondition
utatane.tea@gmail.com [Mon, 7 May 2018 02:46:36 +0000 (02:46 +0000)]
[WTF] Use static initializers for WTF::Mutex and WTF::ThreadCondition
https://bugs.webkit.org/show_bug.cgi?id=185361

Reviewed by Sam Weinig.

Use static initializers for WTF::Mutex and WTF::ThreadCondition to make
constructors of them simple and constexpr.

* wtf/ThreadingPrimitives.h:
* wtf/ThreadingPthreads.cpp:
(WTF::Mutex::Mutex): Deleted.
(WTF::ThreadCondition::ThreadCondition): Deleted.
* wtf/ThreadingWin.cpp:
(WTF::Mutex::Mutex): Deleted.
(WTF::ThreadCondition::ThreadCondition): Deleted.

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

2 years ago[LFC] Add assertions for stale Display::Box geometry
zalan@apple.com [Mon, 7 May 2018 02:09:16 +0000 (02:09 +0000)]
[LFC] Add assertions for stale Display::Box geometry
https://bugs.webkit.org/show_bug.cgi?id=185357

Reviewed by Antti Koivisto.

Ensure that we don't access stale geometry of other boxes during layout.
For example, in order to layout a block child we need the containing block's content box top/left and width (but not the height)

* layout/displaytree/DisplayBox.h:
(WebCore::Display::Box::invalidateTop):
(WebCore::Display::Box::invalidateLeft):
(WebCore::Display::Box::invalidateWidth):
(WebCore::Display::Box::invalidateHeight):
(WebCore::Display::Box::hasValidPosition const):
(WebCore::Display::Box::hasValidSize const):
(WebCore::Display::Box::hasValidGeometry const):
(WebCore::Display::Box::invalidatePosition):
(WebCore::Display::Box::invalidateSize):
(WebCore::Display::Box::setHasValidPosition):
(WebCore::Display::Box::setHasValidSize):
(WebCore::Display::Box::setHasValidGeometry):
(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::setRect):
(WebCore::Display::Box::setTopLeft):
(WebCore::Display::Box::setTop):
(WebCore::Display::Box::setLeft):
(WebCore::Display::Box::setSize):
(WebCore::Display::Box::setWidth):
(WebCore::Display::Box::setHeight):

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

2 years ago[LFC] Add BlockFormattingContext::computeStaticPosition
zalan@apple.com [Sun, 6 May 2018 20:00:31 +0000 (20:00 +0000)]
[LFC] Add BlockFormattingContext::computeStaticPosition
https://bugs.webkit.org/show_bug.cgi?id=185352

Reviewed by Antti Koivisto.

This is the core logic for positioning inflow boxes in a block formatting context (very naive though).

* layout/blockformatting/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::computeStaticPosition const):
* layout/displaytree/DisplayBox.h:

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

2 years agoDFG CFA phase should only do clobber asserts in debug
fpizlo@apple.com [Sun, 6 May 2018 01:06:09 +0000 (01:06 +0000)]
DFG CFA phase should only do clobber asserts in debug
https://bugs.webkit.org/show_bug.cgi?id=185354

Reviewed by Saam Barati.

Clobber asserts are responsible for 1% of compile time. That's too much. This disables them
unless asserts are enabled.

* dfg/DFGCFAPhase.cpp:
(JSC::DFG::CFAPhase::performBlockCFA):

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

2 years agoCleanup XMLHttpRequestUpload a little
commit-queue@webkit.org [Sat, 5 May 2018 23:45:15 +0000 (23:45 +0000)]
Cleanup XMLHttpRequestUpload a little
https://bugs.webkit.org/show_bug.cgi?id=185344

Patch by Sam Weinig <sam@webkit.org> on 2018-05-05
Reviewed by Yusuke Suzuki.

* bindings/js/JSXMLHttpRequestCustom.cpp:
(WebCore::JSXMLHttpRequest::visitAdditionalChildren):
Use auto to reduce redundancy.

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::upload):
* xml/XMLHttpRequest.h:
Switch upload() to return a reference.

* xml/XMLHttpRequestUpload.cpp:
(WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
(WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
* xml/XMLHttpRequestUpload.h:
Cleanup formatting, modernize and switch XMLHttpRequest member from a pointer
to a reference.

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

2 years agoDraw a drop-shadow behind the system preview badge
dino@apple.com [Sat, 5 May 2018 22:42:35 +0000 (22:42 +0000)]
Draw a drop-shadow behind the system preview badge
https://bugs.webkit.org/show_bug.cgi?id=185356
<rdar://problem/40004936>

Reviewed by Wenson Hsieh.

Draw a very subtle drop-shadow under the system
preview badge so that it is more visible on a pure
white background.

I also moved some code around to make it more clear
and improved comments.

* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::paintSystemPreviewBadge):

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

2 years ago[iOS] Multiple links in Mail are dropped in a single line, and are difficult to tell...
wenson_hsieh@apple.com [Sat, 5 May 2018 04:39:52 +0000 (04:39 +0000)]
[iOS] Multiple links in Mail are dropped in a single line, and are difficult to tell apart
https://bugs.webkit.org/show_bug.cgi?id=185289
<rdar://problem/35756912>

Reviewed by Tim Horton and Darin Adler.

Source/WebCore:

When inserting multiple URLs as individual items in a single drop, we currently separate each item with a space
(see r217284). However, it still seems difficult to tell dropped links apart. This patch makes some slight
tweaks to WebContentReader::readURL so that it inserts line breaks before dropped URLs, if the dropped URL isn't
the first item to be inserted in the resulting document fragment.

Augments existing API tests in DataInteractionTests.

* editing/ios/WebContentReaderIOS.mm:

Additionally remove some extraneous header imports from this implementation file.

(WebCore::WebContentReader::readURL):

Tools:

Augment and rebaseline some iOS drag-and-drop API tests that handle dropping URLs as a part of multi-item drop
sessions.

* TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
(TestWebKitAPI::TEST):

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

2 years agowebrtc/addICECandidate-closed.html is timing out
youenn@apple.com [Sat, 5 May 2018 02:11:53 +0000 (02:11 +0000)]
webrtc/addICECandidate-closed.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=185336

Reviewed by Eric Carlson.

* webrtc/addICECandidate-closed.html:

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

2 years agoUse IOSurfaces for CoreImage operations where possible
dino@apple.com [Sat, 5 May 2018 00:26:56 +0000 (00:26 +0000)]
Use IOSurfaces for CoreImage operations where possible
https://bugs.webkit.org/show_bug.cgi?id=185230
<rdar://problem/39926929>

Reviewed by Jon Lee.

On iOS hardware, we can use IOSurfaces as a rendering destination
for CoreImage, which means we're keeping data on the GPU
for rendering.

As a drive-by fix, I used a convenience method for Gaussian blurs.

* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::paintSystemPreviewBadge):

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

2 years agoShift to a lower-level framework for simplifying URLs
timothy_horton@apple.com [Sat, 5 May 2018 00:16:17 +0000 (00:16 +0000)]
Shift to a lower-level framework for simplifying URLs
https://bugs.webkit.org/show_bug.cgi?id=185334

Reviewed by Dan Bernstein.

Source/WebCore:

* Configurations/WebCore.xcconfig:
* platform/mac/DragImageMac.mm:
(WebCore::LinkImageLayout::LinkImageLayout):

Source/WebCore/PAL:

* PAL.xcodeproj/project.pbxproj:
* pal/PlatformMac.cmake:
* pal/spi/cocoa/URLFormattingSPI.h: Renamed from Source/WebCore/PAL/pal/spi/cocoa/LinkPresentationSPI.h.

Source/WebKit:

* Configurations/WebKit.xcconfig:
* UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm:
(-[WKFullScreenWindowController _updateLocationInfo]):

Source/WTF:

* wtf/Platform.h:

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

2 years agoRelease assert in ScriptController::canExecuteScripts via HTMLMediaElement::~HTMLMedi...
rniwa@webkit.org [Fri, 4 May 2018 23:58:04 +0000 (23:58 +0000)]
Release assert in ScriptController::canExecuteScripts via HTMLMediaElement::~HTMLMediaElement()
https://bugs.webkit.org/show_bug.cgi?id=185288

Reviewed by Jer Noble.

The crash is caused by HTMLMediaElement::~HTMLMediaElement canceling the resource load via CachedResource
which ends up calling FrameLoader::checkCompleted() and fire load event on the document synchronously.
Speculatively fix the crash by scheduling the check instead.

In long term, ResourceLoader::cancel should never fire load event synchronously: webkit.org/b/185284.

Unfortunately, no new tests since I can't get MediaResource to get destructed at the right time.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::isRunningDestructor): Added to detect this specific case.
(WebCore::HTMLMediaElementDestructorScope): Added.
(WebCore::HTMLMediaElementDestructorScope::HTMLMediaElementDestructorScope): Added.
(WebCore::HTMLMediaElementDestructorScope::~HTMLMediaElementDestructorScope): Added.
(WebCore::HTMLMediaElement::~HTMLMediaElement): Instantiate HTMLMediaElement.
* html/HTMLMediaElement.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::checkCompleted): Call scheduleCheckCompleted instead of synchronously calling
checkCompleted if we're in the middle of destructing a HTMLMediaElement.

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

2 years agoWeb Inspector: simplify the WI.Collection interface
webkit@devinrousso.com [Fri, 4 May 2018 23:56:10 +0000 (23:56 +0000)]
Web Inspector: simplify the WI.Collection interface
https://bugs.webkit.org/show_bug.cgi?id=185187

Reviewed by Brian Burg.

Source/WebInspectorUI:

* UserInterface/Models/Collection.js:
(WI.Collection.prototype.get size): Added.
(WI.Collection.prototype.has): Added.
(WI.Collection.prototype.toJSON):
(WI.Collection.prototype.[Symbol.iterator]): Added.
(WI.Collection.prototype.get items): Deleted.
(WI.Collection.prototype.toArray): Deleted.

* UserInterface/Controllers/CanvasManager.js:
(WI.CanvasManager.prototype._removeCanvas):
* UserInterface/Controllers/DOMDebuggerManager.js:
(WebInspector.DOMDebuggerManager.prototype.get domBreakpoints):
* UserInterface/Models/Frame.js:
(WI.Frame.prototype.removeAllChildFrames):
(WI.Frame.prototype.resourceForURL):
(WI.Frame.prototype.removeAllResources):
* UserInterface/Models/Script.js:
(WI.Script):
* UserInterface/Views/CanvasContentView.js:
(WI.CanvasContentView.prototype.initialLayout):
* UserInterface/Views/CanvasOverviewContentView.js:
(WI.CanvasOverviewContentView.prototype._updateNavigationItems):
* UserInterface/Views/CanvasSidebarPanel.js:
(WI.CanvasSidebarPanel.prototype._recordingRemoved):
(WI.CanvasSidebarPanel.prototype._canvasChanged):
(WI.CanvasSidebarPanel.prototype._updateRecordingScopeBar):
* UserInterface/Views/CanvasTabContentView.js:
(WI.CanvasTabContentView.prototype.attached):
(WI.CanvasTabContentView.prototype._addCanvas):
(WI.CanvasTabContentView.prototype._removeCanvas):
* UserInterface/Views/CanvasTreeElement.js:
(WI.CanvasTreeElement.prototype.onpopulate):
* UserInterface/Views/CollectionContentView.js:
(WI.CollectionContentView.prototype.initialLayout):
(WI.CollectionContentView.prototype.attached):
* UserInterface/Views/CookieStorageContentView.js:
(WI.CookieStorageContentView.prototype._filterCookies):
* UserInterface/Views/DebuggerSidebarPanel.js:
(WI.DebuggerSidebarPanel.prototype._addResourcesRecursivelyForFrame):
* UserInterface/Views/FolderizedTreeElement.js:
(WI.FolderizedTreeElement.prototype.updateParentStatus):
(WI.FolderizedTreeElement.prototype._shouldGroupIntoFolders):
* UserInterface/Views/FrameTreeElement.js:
(WI.FrameTreeElement.prototype.onpopulate):
* UserInterface/Views/NavigationSidebarPanel.js:
(WI.NavigationSidebarPanel.prototype.get contentTreeOutlines):
* UserInterface/Views/NetworkTableContentView.js:
(WI.NetworkTableContentView.prototype._populateWithInitialResourcesIfNeeded):
* UserInterface/Views/OpenResourceDialog.js:
(WI.OpenResourceDialog.prototype._addResourcesForFrame):
(WI.OpenResourceDialog.prototype._addResourcesForTarget):
* UserInterface/Views/TreeOutlineGroup.js:
(WI.TreeOutlineGroup.prototype.get selectedTreeElement):
(WI.TreeOutlineGroup.prototype._removeConflictingTreeSelections):
* UserInterface/Views/WorkerTreeElement.js:
(WI.WorkerTreeElement.prototype.onpopulate):

LayoutTests:

* http/tests/inspector/dom/cross-domain-inspected-node-access.html:
* http/tests/inspector/dom/disconnect-dom-tree-after-main-frame-navigation.html:
* http/tests/inspector/network/har/har-page.html:
* http/tests/inspector/network/har/har-page-expected.txt:
* http/tests/inspector/network/resource-response-source-memory-cache-revalidate-expired-only.html:
* http/tests/inspector/network/resource-response-source-memory-cache.html:
* http/tests/inspector/network/resource-sizes-memory-cache.html:
* http/tests/inspector/network/set-resource-caching-disabled-memory-cache.html:
* http/tests/inspector/worker/blob-script-with-cross-domain-imported-scripts.html:
* http/tests/websocket/tests/hybi/inspector/before-load.html:
* inspector/canvas/resources/recording-utilities.js:
* inspector/css/manager-preferredInspectorStyleSheetForFrame.html:
* inspector/debugger/resources/log-pause-location.js:
(TestPage.registerInitializer.window.findScript):
* inspector/dom/highlightFrame.html:
* inspector/dom/highlightNode.html:
* inspector/dom/highlightNodeList.html:
* inspector/dom/highlightSelector.html:
* inspector/model/frame-extra-scripts.html:
* inspector/page/empty-or-missing-resources.html:
* inspector/unit-tests/resource-collection.html:
* inspector/worker/resources-in-worker.html:

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

2 years agoRename DocumentOrderedMap to TreeScopeOrderedMap
rniwa@webkit.org [Fri, 4 May 2018 23:52:43 +0000 (23:52 +0000)]
Rename DocumentOrderedMap to TreeScopeOrderedMap
https://bugs.webkit.org/show_bug.cgi?id=185290

Reviewed by Zalan Bujtas.

Renamed the class since it's almost always a mistake to use this class as a member variable of Document.

* Sources.txt:
* WebCore.xcodeproj/project.pbxproj:
* dom/MouseRelatedEvent.cpp: Include the forgotten DOMWindow.h. Unified build files bit us here.
* dom/TreeScope.cpp:
(WebCore::TreeScope::addElementById):
(WebCore::TreeScope::addElementByName):
(WebCore::TreeScope::addImageMap):
(WebCore::TreeScope::addImageElementByUsemap):
(WebCore::TreeScope::labelElementForId):
* dom/TreeScope.h:
* dom/TreeScopeOrderedMap.cpp: Renamed from DocumentOrderedMap.cpp
* dom/TreeScopeOrderedMap.h: Renamed from DocumentOrderedMap.h
* html/HTMLDocument.h:

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

2 years agoShutdown WindowServer connections after checking in with launch services
pvollan@apple.com [Fri, 4 May 2018 23:42:44 +0000 (23:42 +0000)]
Shutdown WindowServer connections after checking in with launch services
https://bugs.webkit.org/show_bug.cgi?id=185082
<rdar://problem/39613173>

Reviewed by Brent Fulgham.

When WindowServer access is blocked in the WebContent process, we should shutdown all connections
after checking in with launch services.

* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeProcess):

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

2 years agoREGRESSION (r230326?): Layout Test http/tests/contentextensions/make-https.html is...
youenn@apple.com [Fri, 4 May 2018 23:41:55 +0000 (23:41 +0000)]
REGRESSION (r230326?): Layout Test http/tests/contentextensions/make-https.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=184476
<rdar://problem/39384226>

Reviewed by Ryosuke Niwa.

Removed flakiness expectation.
Updated test to no longer log load callbacks.
Instead, we rely on the fact that the four content extension upgrades
are also logged as console log messages.

* http/tests/contentextensions/make-https-expected.txt:
* http/tests/contentextensions/make-https.html:
* platform/mac-sierra-wk2/http/tests/contentextensions/make-https-expected.txt: Removed.
* platform/mac-wk2/TestExpectations:

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

2 years ago[Win][WebKit] Fix forwarding headers for Windows build
don.olmstead@sony.com [Fri, 4 May 2018 23:29:03 +0000 (23:29 +0000)]
[Win][WebKit] Fix forwarding headers for Windows build
https://bugs.webkit.org/show_bug.cgi?id=184412

Reviewed by Alex Christensen.

Source/WebCore:

No new tests. No change in behavior.

* PlatformWin.cmake:

Source/WebKit:

* PlatformWin.cmake:
* UIProcess/API/APIAttachment.h:
* UIProcess/API/APIContextMenuClient.h:
* UIProcess/API/C/WKProcessTerminationReason.h:
* WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:

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

2 years agoMark animations/duplicate-keys.html as flaky on iOS.
ryanhaddad@apple.com [Fri, 4 May 2018 23:07:07 +0000 (23:07 +0000)]
Mark animations/duplicate-keys.html as flaky on iOS.
https://bugs.webkit.org/show_bug.cgi?id=185332

Unreviewed test gardening.

* platform/ios/TestExpectations:

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

2 years agoRebaseline tests for iOS after r231359.
ryanhaddad@apple.com [Fri, 4 May 2018 22:34:31 +0000 (22:34 +0000)]
Rebaseline tests for iOS after r231359.

Unreviewed test gardening.

* 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:

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

2 years ago[Simple line layout] Add support for line layout box generation with multiple text...
zalan@apple.com [Fri, 4 May 2018 22:23:47 +0000 (22:23 +0000)]
[Simple line layout] Add support for line layout box generation with multiple text renderers.
https://bugs.webkit.org/show_bug.cgi?id=185276

Reviewed by Antti Koivisto.

Covered by existing tests.

* rendering/SimpleLineLayoutFunctions.cpp:
(WebCore::SimpleLineLayout::canUseForLineBoxTree):
(WebCore::SimpleLineLayout::generateLineBoxTree):
* rendering/SimpleLineLayoutResolver.cpp:
(WebCore::SimpleLineLayout::RunResolver::Run::renderer const):
(WebCore::SimpleLineLayout::RunResolver::Run::localStart const):
(WebCore::SimpleLineLayout::RunResolver::Run::localEnd const):
* rendering/SimpleLineLayoutResolver.h:

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

2 years agoDeprecate legacy WebView and friends
timothy@apple.com [Fri, 4 May 2018 21:43:21 +0000 (21:43 +0000)]
Deprecate legacy WebView and friends
https://bugs.webkit.org/show_bug.cgi?id=185279
rdar://problem/33268700

Reviewed by Tim Horton.

Source/WebCore:

* Configurations/WebCore.xcconfig:
Added BUILDING_WEBKIT define to disable the deprecation macros.
* bridge/objc/WebScriptObject.h:
Added deprecation macros to WebScriptObject and WebUndefined.
* platform/cocoa/WebKitAvailability.h:
Added more macros and a way to disable deprecation warnings for
WebKit build and in clients like Safari.

Source/WebKitLegacy/mac:

Added deprecation macros to all the classes, extern strings, and enums.

* Configurations/WebKitLegacy.xcconfig:
Added BUILDING_WEBKIT define to disable the deprecation macros.
* DOM/DOMAbstractView.h:
* DOM/DOMAttr.h:
* DOM/DOMBlob.h:
* DOM/DOMCDATASection.h:
* DOM/DOMCSSCharsetRule.h:
* DOM/DOMCSSFontFaceRule.h:
* DOM/DOMCSSImportRule.h:
* DOM/DOMCSSMediaRule.h:
* DOM/DOMCSSPageRule.h:
* DOM/DOMCSSPrimitiveValue.h:
* DOM/DOMCSSRule.h:
* DOM/DOMCSSRuleList.h:
* DOM/DOMCSSStyleDeclaration.h:
* DOM/DOMCSSStyleRule.h:
* DOM/DOMCSSStyleSheet.h:
* DOM/DOMCSSUnknownRule.h:
* DOM/DOMCSSValue.h:
* DOM/DOMCSSValueList.h:
* DOM/DOMCharacterData.h:
* DOM/DOMComment.h:
* DOM/DOMCounter.h:
* DOM/DOMDocument.h:
* DOM/DOMDocumentFragment.h:
* DOM/DOMDocumentType.h:
* DOM/DOMElement.h:
* DOM/DOMEntity.h:
* DOM/DOMEntityReference.h:
* DOM/DOMEvent.h:
* DOM/DOMEventException.h:
* DOM/DOMEventListener.h:
* DOM/DOMEventTarget.h:
* DOM/DOMException.h:
* DOM/DOMFile.h:
* DOM/DOMFileList.h:
* DOM/DOMHTMLAnchorElement.h:
* DOM/DOMHTMLAppletElement.h:
* DOM/DOMHTMLAreaElement.h:
* DOM/DOMHTMLBRElement.h:
* DOM/DOMHTMLBaseElement.h:
* DOM/DOMHTMLBaseFontElement.h:
* DOM/DOMHTMLBodyElement.h:
* DOM/DOMHTMLButtonElement.h:
* DOM/DOMHTMLCanvasElement.h:
* DOM/DOMHTMLCollection.h:
* DOM/DOMHTMLDListElement.h:
* DOM/DOMHTMLDirectoryElement.h:
* DOM/DOMHTMLDivElement.h:
* DOM/DOMHTMLDocument.h:
* DOM/DOMHTMLElement.h:
* DOM/DOMHTMLEmbedElement.h:
* DOM/DOMHTMLFieldSetElement.h:
* DOM/DOMHTMLFontElement.h:
* DOM/DOMHTMLFormElement.h:
* DOM/DOMHTMLFrameElement.h:
* DOM/DOMHTMLFrameSetElement.h:
* DOM/DOMHTMLHRElement.h:
* DOM/DOMHTMLHeadElement.h:
* DOM/DOMHTMLHeadingElement.h:
* DOM/DOMHTMLHtmlElement.h:
* DOM/DOMHTMLIFrameElement.h:
* DOM/DOMHTMLImageElement.h:
* DOM/DOMHTMLInputElement.h:
* DOM/DOMHTMLLIElement.h:
* DOM/DOMHTMLLabelElement.h:
* DOM/DOMHTMLLegendElement.h:
* DOM/DOMHTMLLinkElement.h:
* DOM/DOMHTMLMapElement.h:
* DOM/DOMHTMLMarqueeElement.h:
* DOM/DOMHTMLMediaElement.h:
* DOM/DOMHTMLMenuElement.h:
* DOM/DOMHTMLMetaElement.h:
* DOM/DOMHTMLModElement.h:
* DOM/DOMHTMLOListElement.h:
* DOM/DOMHTMLObjectElement.h:
* DOM/DOMHTMLOptGroupElement.h:
* DOM/DOMHTMLOptionElement.h:
* DOM/DOMHTMLOptionsCollection.h:
* DOM/DOMHTMLParagraphElement.h:
* DOM/DOMHTMLParamElement.h:
* DOM/DOMHTMLPreElement.h:
* DOM/DOMHTMLQuoteElement.h:
* DOM/DOMHTMLScriptElement.h:
* DOM/DOMHTMLSelectElement.h:
* DOM/DOMHTMLStyleElement.h:
* DOM/DOMHTMLTableCaptionElement.h:
* DOM/DOMHTMLTableCellElement.h:
* DOM/DOMHTMLTableColElement.h:
* DOM/DOMHTMLTableElement.h:
* DOM/DOMHTMLTableRowElement.h:
* DOM/DOMHTMLTableSectionElement.h:
* DOM/DOMHTMLTextAreaElement.h:
* DOM/DOMHTMLTitleElement.h:
* DOM/DOMHTMLUListElement.h:
* DOM/DOMHTMLVideoElement.h:
* DOM/DOMImplementation.h:
* DOM/DOMKeyboardEvent.h:
* DOM/DOMMediaError.h:
* DOM/DOMMediaList.h:
* DOM/DOMMouseEvent.h:
* DOM/DOMMutationEvent.h:
* DOM/DOMNamedNodeMap.h:
* DOM/DOMNode.h:
* DOM/DOMNodeFilter.h:
* DOM/DOMNodeIterator.h:
* DOM/DOMNodeList.h:
* DOM/DOMObject.h:
* DOM/DOMOverflowEvent.h:
* DOM/DOMProcessingInstruction.h:
* DOM/DOMProgressEvent.h:
* DOM/DOMRGBColor.h:
* DOM/DOMRange.h:
* DOM/DOMRangeException.h:
* DOM/DOMRect.h:
* DOM/DOMStyleSheet.h:
* DOM/DOMStyleSheetList.h:
* DOM/DOMText.h:
* DOM/DOMTextEvent.h:
* DOM/DOMTimeRanges.h:
* DOM/DOMTokenList.h:
* DOM/DOMTreeWalker.h:
* DOM/DOMUIEvent.h:
* DOM/DOMWheelEvent.h:
* DOM/DOMXPathException.h:
* DOM/DOMXPathExpression.h:
* DOM/DOMXPathNSResolver.h:
* DOM/DOMXPathResult.h:
* History/WebBackForwardList.h:
* History/WebHistory.h:
* History/WebHistoryItem.h:
* Misc/WebDownload.h:
* Misc/WebKitErrors.h:
* Plugins/WebPluginViewFactory.h:
* WebView/WebArchive.h:
* WebView/WebDataSource.h:
* WebView/WebDocument.h:
* WebView/WebEditingDelegate.h:
* WebView/WebFormDelegate.h:
* WebView/WebFrame.h:
* WebView/WebFrameLoadDelegate.h:
* WebView/WebFrameView.h:
* WebView/WebPolicyDelegate.h:
* WebView/WebPreferences.h:
* WebView/WebPreferencesPrivate.h:
* WebView/WebResourceLoadDelegate.h:
* WebView/WebUIDelegate.h:
* WebView/WebUIDelegatePrivate.h:
* WebView/WebView.h:
* WebView/WebViewPrivate.h:
* postprocess-headers.sh:
Remove step that converts WEBKIT macros to NS macros.
Change it to just remove the macros on iOS builds.

Tools:

* MiniBrowser/Configurations/Base.xcconfig: Added GCC_PREPROCESSOR_DEFINITIONS
to define DISABLE_LEGACY_WEBKIT_DEPRECATIONS.

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

2 years agoLog media time range as JSON
eric.carlson@apple.com [Fri, 4 May 2018 21:39:24 +0000 (21:39 +0000)]
Log media time range as JSON
https://bugs.webkit.org/show_bug.cgi?id=185321
<rdar://problem/39986746>

Reviewed by Youenn Fablet.

Source/WebCore:

No new tests, tested manually.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::addPlayedRange): Log as time range.
(WebCore::HTMLMediaElement::visibilityStateChanged): Cleanup.

* platform/graphics/MediaPlayer.h:
(WTF::LogArgument<MediaTime>::toString):
(WTF::LogArgument<MediaTimeRange>::toString):

* platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
(WebCore::InbandTextTrackPrivateAVF::processAttributedStrings): Log error as time range.

Source/WTF:

* wtf/MediaTime.cpp:
(WTF::toJSONStringInternal): Extract guts of MediaTime::toJSONString to this static function
so it can be used by MediaTimeRange::toJSONString as well.
(WTF::MediaTime::toJSONString const):
(WTF::MediaTimeRange::toJSONString const):
* wtf/MediaTime.h:

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

2 years agoRebaseline tests after r231359.
ryanhaddad@apple.com [Fri, 4 May 2018 21:26:09 +0000 (21:26 +0000)]
Rebaseline tests after r231359.

Unreviewed test gardening.

* 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:

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

2 years agoUpdate TestExpectations for media/video-aspect-ratio.html.
ryanhaddad@apple.com [Fri, 4 May 2018 21:26:06 +0000 (21:26 +0000)]
Update TestExpectations for media/video-aspect-ratio.html.
https://bugs.webkit.org/show_bug.cgi?id=184457

Unreviewed test gardening.

* platform/mac-wk1/TestExpectations:
* platform/mac/TestExpectations:

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

2 years agoUse the containing block to compute the pagination gap when the container is inline.
zalan@apple.com [Fri, 4 May 2018 21:15:09 +0000 (21:15 +0000)]
Use the containing block to compute the pagination gap when the container is inline.
https://bugs.webkit.org/show_bug.cgi?id=184724
<rdar://problem/39521800>

Reviewed by Simon Fraser.

Source/WebCore:

Test: fast/overflow/page-overflow-with-inline-body-crash.html

* page/FrameView.cpp:
(WebCore::FrameView::applyPaginationToViewport):

LayoutTests:

* fast/overflow/page-overflow-with-inline-body-crash-expected.txt: Added.
* fast/overflow/page-overflow-with-inline-body-crash.html: Added.

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

2 years agoDon't use GSFont* in minimal simulator mode
timothy_horton@apple.com [Fri, 4 May 2018 20:54:46 +0000 (20:54 +0000)]
Don't use GSFont* in minimal simulator mode
https://bugs.webkit.org/show_bug.cgi?id=185320
<rdar://problem/39734478>

Reviewed by Beth Dakin.

* page/cocoa/MemoryReleaseCocoa.mm:
(WebCore::platformReleaseMemory):

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

2 years agoWeb Inspector: Styles: Newly added unsupported properties sometimes don't have warnings
nvasilyev@apple.com [Fri, 4 May 2018 20:51:47 +0000 (20:51 +0000)]
Web Inspector: Styles: Newly added unsupported properties sometimes don't have warnings
https://bugs.webkit.org/show_bug.cgi?id=183097
<rdar://problem/37843816>

Reviewed by Matt Baker.

Update status of properties warnings every time focus moves.

* UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.layout):
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.spreadsheetStylePropertyFocusMoved):
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype._propertiesChanged):
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype._updatePropertiesStatus):
* UserInterface/Views/SpreadsheetStyleProperty.js:
(WI.SpreadsheetStyleProperty.prototype.spreadsheetTextFieldDidBlur):

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

2 years ago[iOS] Apps that are not visible may not get suspended if they trigger page loads...
cdumez@apple.com [Fri, 4 May 2018 20:48:23 +0000 (20:48 +0000)]
[iOS] Apps that are not visible may not get suspended if they trigger page loads while in the background
https://bugs.webkit.org/show_bug.cgi?id=185318

Reviewed by Geoffrey Garen.

Whenever there is a page load going on, we take a background process assertion to delay process
suspension until this load completes. However, there is also a 3 seconds grace period after
a load is complete to allow the app to trigger a new load shortly after. This grace period was
introduced to support use cases where a visible app does loads in an offscreen view. However,
it can be abused by apps running in the background as they could trigger new page loads while
in the background to delay process suspension. This patch tightens the policy so that only
apps that are currently visible get to use this grace period. Apps that are in the background
get to finish their current load and will then get suspended.

* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::didChangeIsLoading):

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

2 years agoisCacheableArrayLength should return true for undecided arrays
keith_miller@apple.com [Fri, 4 May 2018 20:47:57 +0000 (20:47 +0000)]
isCacheableArrayLength should return true for undecided arrays
https://bugs.webkit.org/show_bug.cgi?id=185309

Reviewed by Michael Saboff.

JSTests:

* stress/get-array-length-undecided.js: Added.
(test):

Source/JavaScriptCore:

Undecided arrays have butterflies so there is no reason why we
should not be able to cache their length.

* bytecode/InlineAccess.cpp:
(JSC::InlineAccess::isCacheableArrayLength):

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

2 years agoAdjust sandbox profile for simulator.
pvollan@apple.com [Fri, 4 May 2018 20:44:36 +0000 (20:44 +0000)]
Adjust sandbox profile for simulator.
https://bugs.webkit.org/show_bug.cgi?id=185319

Reviewed by Brent Fulgham.

Disable Kerberos rules, as well as rules related to NSApplication initialization.

* WebProcess/com.apple.WebProcess.sb.in:

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

2 years agoTest262-Runner: Add base module to the local deps - unicore/PVA.pl
commit-queue@webkit.org [Fri, 4 May 2018 20:40:24 +0000 (20:40 +0000)]
Test262-Runner: Add base module to the local deps - unicore/PVA.pl
https://bugs.webkit.org/show_bug.cgi?id=185314

Patch by Leo Balter <leonardo.balter@gmail.com> on 2018-05-04
Reviewed by Michael Saboff.

* Scripts/test262/local/lib/perl5/unicore/PVA.pl: Added.

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

2 years agoWeb Inspector: Styles Redesign: ensure that tabbing through the last section wraps...
webkit@devinrousso.com [Fri, 4 May 2018 20:29:24 +0000 (20:29 +0000)]
Web Inspector: Styles Redesign: ensure that tabbing through the last section wraps back to the first
https://bugs.webkit.org/show_bug.cgi?id=181973

Reviewed by Matt Baker.

Unified delegate functions to start editing previous/next rules into a single function for
simplicity.

* UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.spreadsheetCSSStyleDeclarationEditorFocusMoved):

* UserInterface/Views/SpreadsheetCSSStyleDeclarationSection.js:
(WI.SpreadsheetCSSStyleDeclarationSection.prototype.startEditingRuleSelector):
(WI.SpreadsheetCSSStyleDeclarationSection.prototype.spreadsheetSelectorFieldDidChange):
(WI.SpreadsheetCSSStyleDeclarationSection.prototype.spreadsheetCSSStyleDeclarationEditorStartEditingAdjacentRule):
(WI.SpreadsheetCSSStyleDeclarationSection.prototype.cssStyleDeclarationEditorStartEditingAdjacentRule): Deleted.

* UserInterface/Views/SpreadsheetRulesStyleDetailsPanel.js:
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.focusFirstSection):
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.focusLastSection):
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.spreadsheetCSSStyleDeclarationSectionStartEditingAdjacentRule):
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionStartEditingNextRule): Deleted.
(WI.SpreadsheetRulesStyleDetailsPanel.prototype.cssStyleDeclarationSectionStartEditingPreviousRule): Deleted.

* UserInterface/Views/GeneralStyleDetailsSidebarPanel.js:
(WI.GeneralStyleDetailsSidebarPanel.prototype.styleDetailsPanelFocusLastPseudoClassCheckbox):
(WI.GeneralStyleDetailsSidebarPanel.prototype.styleDetailsPanelFocusFilterBar):
(WI.GeneralStyleDetailsSidebarPanel.prototype.initialLayout):
(WI.GeneralStyleDetailsSidebarPanel.prototype._handleForcedPseudoClassCheckboxKeydown):
(WI.GeneralStyleDetailsSidebarPanel.prototype._forcedPseudoClassCheckboxChanged):
(WI.GeneralStyleDetailsSidebarPanel.prototype._handleFilterBarInputFieldKeyDown):

Drive-by fix: provide tabbing support for the Computed styles panel.

* UserInterface/Views/CSSStyleDeclarationTextEditor.js:
(WI.CSSStyleDeclarationTextEditor.prototype._handleShiftTabKey.switchRule):
(WI.CSSStyleDeclarationTextEditor.prototype._handleTabKey.switchRule):

* UserInterface/Views/ComputedStyleDetailsPanel.js:
(WI.ComputedStyleDetailsPanel.prototype.focusFirstSection):
(WI.ComputedStyleDetailsPanel.prototype.focusLastSection):
(WI.ComputedStyleDetailsPanel.prototype.cssStyleDeclarationTextEditorStartEditingAdjacentRule):

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

2 years agoWasted time dlopening Lookup when tearing down a WKWebView
timothy_horton@apple.com [Fri, 4 May 2018 19:42:40 +0000 (19:42 +0000)]
Wasted time dlopening Lookup when tearing down a WKWebView
https://bugs.webkit.org/show_bug.cgi?id=185310
<rdar://problem/39934085>

Reviewed by Wenson Hsieh.

* UIProcess/Cocoa/WebViewImpl.h:
* UIProcess/Cocoa/WebViewImpl.mm:
(-[WKWindowVisibilityObserver dealloc]):
(-[WKWindowVisibilityObserver startObservingLookupDismissalIfNeeded]):
(WebKit::WebViewImpl::prepareForDictionaryLookup):
(-[WKWindowVisibilityObserver startObservingLookupDismissal]): Deleted.
Avoid un-registering as a Lookup dismissal observer if we never
registered in the first place, because that involves dlopening Lookup.

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

2 years agoAllow Web Touch events to timeout
megan_gardner@apple.com [Fri, 4 May 2018 19:16:40 +0000 (19:16 +0000)]
Allow Web Touch events to timeout
https://bugs.webkit.org/show_bug.cgi?id=185282
<rdar://problem/38728319>

Reviewed by Tim Horton.

Web Touch events currently never time out, which blocks the user from interacting with the UI Process at all.
We should allow these events to time out so that the user can interact with the rest of the UI.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::handleTouchEventSynchronously):

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

2 years agoREGRESSION: [ios-simulator] 3 WKWebViewAutofillTests API test failures seen with...
commit-queue@webkit.org [Fri, 4 May 2018 18:52:47 +0000 (18:52 +0000)]
REGRESSION: [ios-simulator] 3 WKWebViewAutofillTests API test failures seen with 11.3 SDK
https://bugs.webkit.org/show_bug.cgi?id=184196
<rdar://problem/39054481>

Patch by Wenson Hsieh <whsieh@berkeley.edu> on 2018-05-04
Reviewed by Tim Horton.

Source/WebKit:

Remove an unnecessary call to NSClassFromString, now that trunk WebKit only supports iOS 11.3+.

* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView insertTextSuggestion:]):

Tools:

Removes some unnecessary workarounds to enable running app autofill tests against iOS versions
earlier than 11.3. Also re-enables these tests.

* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
(TestWebKitAPI::TEST):
(-[UITextAutofillSuggestion initWithUsername:password:]): Deleted.
(+[UITextAutofillSuggestion autofillSuggestionWithUsername:password:]): Deleted.

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

2 years agoWeb Inspector: Canvas tab: Determine isFunction by looking at the prototype
webkit@devinrousso.com [Fri, 4 May 2018 18:50:30 +0000 (18:50 +0000)]
Web Inspector: Canvas tab: Determine isFunction by looking at the prototype
https://bugs.webkit.org/show_bug.cgi?id=184990

Reviewed by Brian Burg.

Source/WebInspectorUI:

* UserInterface/Models/RecordingAction.js:
(WI.RecordingAction.isFunctionForType):
(WI.RecordingAction._prototypeForType):
(WI.RecordingAction.prototype.async.swizzle):

LayoutTests:

* inspector/canvas/recording-2d-expected.txt:

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

2 years agoUnreviewed, rolling out r231331.
cdumez@apple.com [Fri, 4 May 2018 18:44:47 +0000 (18:44 +0000)]
Unreviewed, rolling out r231331.

Caused a few tests to assert

Reverted changeset:

"Stop using an iframe's id as fallback if its name attribute
is not set"
https://bugs.webkit.org/show_bug.cgi?id=11388
https://trac.webkit.org/changeset/231331

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

2 years agoUse more references in updateTracksOfType
youenn@apple.com [Fri, 4 May 2018 18:37:19 +0000 (18:37 +0000)]
Use more references in updateTracksOfType
https://bugs.webkit.org/show_bug.cgi?id=185305

Reviewed by Eric Carlson.

No change of behavior.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::updateTracksOfType):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updateTracks):

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

2 years agoNetworkProcessProxy::didReceiveAuthenticationChallenge should take an AuthenticationC...
youenn@apple.com [Fri, 4 May 2018 18:35:59 +0000 (18:35 +0000)]
NetworkProcessProxy::didReceiveAuthenticationChallenge should take an AuthenticationChallenge r-value
https://bugs.webkit.org/show_bug.cgi?id=185302

Reviewed by Geoffrey Garen.

Pass AuthenticationChallenge as an r-value since it comes from IPC.
No change of behavior.

* UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
(WebKit::AuthenticationChallengeProxy::AuthenticationChallengeProxy):
* UIProcess/Authentication/AuthenticationChallengeProxy.h:
(WebKit::AuthenticationChallengeProxy::create):
* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
* UIProcess/Downloads/DownloadProxy.h:
* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::didReceiveAuthenticationChallenge):
* UIProcess/Network/NetworkProcessProxy.h:

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

2 years agoMark http/tests/contentextensions/make-https.html as flaky.
ryanhaddad@apple.com [Fri, 4 May 2018 18:01:21 +0000 (18:01 +0000)]
Mark http/tests/contentextensions/make-https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=184476

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

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

2 years agoMark media/navigate-with-pip-should-not-crash.html as flaky.
ryanhaddad@apple.com [Fri, 4 May 2018 18:01:18 +0000 (18:01 +0000)]
Mark media/navigate-with-pip-should-not-crash.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=173119

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

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

2 years agoDisable tests on systems with limited memory
commit-queue@webkit.org [Fri, 4 May 2018 17:46:47 +0000 (17:46 +0000)]
Disable tests on systems with limited memory
https://bugs.webkit.org/show_bug.cgi?id=185296

Patch by Dominik Infuehr <dinfuehr@igalia.com> on 2018-05-04
Reviewed by Saam Barati.

Test doesn't work with a limited amount of memory. I tried to reduce memory usage
but then it was hard to reproduce the failure the test was originally made to test.

* stress/array-reverse-doesnt-clobber.js:

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

2 years agoText shaping in the simple path is flipped in the y direction
mmaxfield@apple.com [Fri, 4 May 2018 17:38:54 +0000 (17:38 +0000)]
Text shaping in the simple path is flipped in the y direction
https://bugs.webkit.org/show_bug.cgi?id=185062
<rdar://problem/39778678>

Reviewed by Simon Fraser.

Source/WebCore:

Shaping in our simple codepath occurs in an "increasing-y-goes-up" coordinate system, but our painting
code uses an "increasing-y-goes-down" coordinate system. We weren't fixing up the coordinate systems
because we never noticed. This is because the simple codepath is only designed for kerning and ligatures,
neither of which move glyphs vertically in the common case.

Test: fast/text/vertical-displacement-simple-codepath.html

* platform/graphics/Font.cpp:
(WebCore::Font::applyTransforms const):
* platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::applyFontTransforms):

Tools:

Huge thanks to Ulrike Rausch of LiebeFonts for contributing the test fonts!!!

* Scripts/webkitpy/common/config/contributors.json:

LayoutTests:

This test renders a font which uses our fast text codepath but also includes vertical
displacements inside its liga feature. The test makes sure that the vertical displacement
occurs in the correct direction.

The test fonts were created by Ulrike Rausch of LiebeFonts specifically for the purpose
of testing. Huge thanks to her!! Figuring out this bug would not have been possible if
not for her huge help!

* fast/text/resources/LiebeTest-calt.woff: Added.
* fast/text/resources/LiebeTest-dlig.woff: Added.
* fast/text/resources/LiebeTest-liga.woff: Added.
* fast/text/resources/LiebeTest-swsh.woff: Added.
* fast/text/vertical-displacement-simple-codepath-expected.html: Added.
* fast/text/vertical-displacement-simple-codepath.html: Added.

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

2 years agoTest262-Runner: place the processCLI inside the main call
commit-queue@webkit.org [Fri, 4 May 2018 17:36:34 +0000 (17:36 +0000)]
Test262-Runner: place the processCLI inside the main call
https://bugs.webkit.org/show_bug.cgi?id=185304

Patch by Leo Balter <leonardo.balter@gmail.com> on 2018-05-04
Reviewed by Michael Saboff.

* Scripts/test262/Runner.pm:
(main):

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

2 years agoSerialize all URLs with double-quotes per CSSOM spec
commit-queue@webkit.org [Fri, 4 May 2018 17:32:48 +0000 (17:32 +0000)]
Serialize all URLs with double-quotes per CSSOM spec
https://bugs.webkit.org/show_bug.cgi?id=184935

Patch by Chris Nardi <cnardi@chromium.org> on 2018-05-04
Reviewed by Antti Koivisto.

LayoutTests/imported/w3c:

Update expectations for using double quotes when serializing URLs.

* web-platform-tests/cssom/serialize-values-expected.txt:
* web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
* web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
* web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:

Source/WebCore:

According to https://drafts.csswg.org/cssom/#serialize-a-url, all URLs should be serialized as strings,
which means they should have double quotes around the text of the URL. Update our implementation to match
this (and Firefox/Chrome). Also remove isCSSTokenizerURL() as this method is no longer needed.

Tests: Many LayoutTests updated to use double quotes.

* css/CSSMarkup.cpp:
(WebCore::serializeString): Remove FIXME as this was already fixed in a previous patch.
(WebCore::serializeURL): Remove FIXME and update implementation.

LayoutTests:

Update tests to use double quotes when serializing URLs, and fixes for using double quotes in the test.

* css3/calc/cross-fade-calc.html:
* css3/filters/backdrop/backdropfilter-property-computed-style-expected.txt:
* css3/filters/backdrop/backdropfilter-property-computed-style.html:
* css3/filters/backdrop/backdropfilter-property-parsing-expected.txt:
* css3/filters/backdrop/backdropfilter-property-parsing.html:
* css3/filters/filter-property-computed-style-expected.txt:
* css3/filters/filter-property-computed-style.html:
* css3/filters/filter-property-expected.txt:
* css3/filters/filter-property-parsing-expected.txt:
* css3/filters/filter-property-parsing.html:
* css3/filters/filter-property.html:
* css3/filters/unprefixed-expected.txt:
* css3/filters/unprefixed.html:
* fast/backgrounds/background-shorthand-after-set-backgroundSize-expected.txt:
* fast/backgrounds/background-shorthand-after-set-backgroundSize.html:
* fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt:
* fast/backgrounds/background-shorthand-with-backgroundSize-style.html:
* fast/backgrounds/multiple-backgrounds-computed-style-expected.txt:
* fast/backgrounds/multiple-backgrounds-computed-style.html:
* fast/css/background-position-serialize-expected.txt:
* fast/css/cursor-parsing-expected.txt:
* fast/css/cursor-parsing-image-set-expected.txt:
* fast/css/cursor-parsing-image-set.html:
* fast/css/cursor-parsing.html:
* fast/css/getComputedStyle/computed-style-border-image-expected.txt:
* fast/css/getComputedStyle/computed-style-border-image.html:
* fast/css/getComputedStyle/computed-style-cross-fade-expected.txt:
* fast/css/getComputedStyle/computed-style-cross-fade.html:
* fast/css/getComputedStyle/computed-style-properties-expected.txt:
* fast/css/getComputedStyle/computed-style-properties.html:
* fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt:
* fast/css/getComputedStyle/getComputedStyle-background-shorthand.html:
* fast/css/getComputedStyle/getComputedStyle-list-style-shorthand-expected.txt:
* fast/css/getComputedStyle/getComputedStyle-list-style-shorthand.html:
* fast/css/image-set-parsing.html:
* fast/css/image-set-setting-expected.txt:
* fast/css/image-set-setting.html:
* fast/css/image-set-unprefixed-expected.txt:
* fast/css/image-set-unprefixed.html:
* fast/css/invalid-cursor-property-crash.html:
* fast/css/parse-border-image-repeat-null-crash-expected.txt:
* fast/css/uri-token-parsing-expected.txt:
* fast/css/uri-token-parsing.html:
* fast/css/url-with-multi-byte-unicode-escape-expected.txt:
* fast/css/url-with-multi-byte-unicode-escape.html:
* fast/filter-image/parse-filter-image-expected.txt:
* fast/filter-image/parse-filter-image.html:
* fast/innerHTML/innerHTML-uri-resolution.html:
* fast/inspector-support/cssURLQuotes-expected.txt:
* fast/inspector-support/cssURLQuotes.html:
* fast/masking/parsing-clip-path-iri-expected.txt:
* fast/masking/parsing-clip-path-iri.html:
* fast/masking/parsing-mask-expected.txt:
* fast/masking/parsing-mask.html:
* fast/shapes/parsing/parsing-shape-outside-expected.txt:
* fast/shapes/parsing/parsing-shape-outside.html:
* fast/shapes/parsing/parsing-test-utils.js:
(removeBaseURL):
* platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
* platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
* platform/gtk/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
* platform/ios/fast/css/image-set-unprefixed-expected.txt: Removed.
* 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:
* platform/win/fast/css/parse-border-image-repeat-null-crash-expected.txt:
* platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/accumulation-per-property-expected.txt:
* platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/addition-per-property-expected.txt:
* platform/wpe/imported/w3c/web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-expected.txt:
* resources/image-preload-helper.js:
(preloadImagesFromStyle):
* svg/css/svg-attribute-parser-mode-expected.txt:
* svg/css/svg-attribute-parser-mode.html:
* svg/custom/marker-getPropertyValue-expected.txt:
* svg/custom/marker-getPropertyValue.svg:

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

2 years agoLayoutTests/fast/mediastream/change-tracks-media-stream-being-played.html is crashing...
youenn@apple.com [Fri, 4 May 2018 17:24:08 +0000 (17:24 +0000)]
LayoutTests/fast/mediastream/change-tracks-media-stream-being-played.html is crashing after r231304
https://bugs.webkit.org/show_bug.cgi?id=185303

Reviewed by Eric Carlson.

We need to stop observing the audio track like we do for video track once we are no longer interested in it.
Covered by test no longer crashing.

* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updateTracks):

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

2 years agoImprove test at media/modern-media-controls/airplay-button/airplay-button-on.html...
commit-queue@webkit.org [Fri, 4 May 2018 17:21:21 +0000 (17:21 +0000)]
Improve test at media/modern-media-controls/airplay-button/airplay-button-on.html to not hardcode the -apple-wireless-playback-target-active color
https://bugs.webkit.org/show_bug.cgi?id=185297
<rdar://problem/39737716>

Patch by Antoine Quint <graouts@apple.com> on 2018-05-04
Reviewed by Dean Jackson.

Create an element and set its "color" property to "-apple-wireless-playback-target-active" so we can use
getComputedStyle() to query the applied value instead of hard-coding the expected color.

* media/modern-media-controls/airplay-button/airplay-button-on.html:

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

2 years agoAssertion failure in NetworkStorageSession::setCookie: privilege of UI process is...
commit-queue@webkit.org [Fri, 4 May 2018 16:51:16 +0000 (16:51 +0000)]
Assertion failure in NetworkStorageSession::setCookie: privilege of UI process is not set
https://bugs.webkit.org/show_bug.cgi?id=185262

Patch by Sihui Liu <sihui_liu@apple.com> on 2018-05-04
Reviewed by Chris Dumez.

Fix an assertion failure by setting UI process privileges in constructor of WebsiteDataStore
because UI process may use the cookie API before creating a WebView.

* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::WebsiteDataStore):

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

2 years ago[LFC] Set the invalidation root as the result of style change.
zalan@apple.com [Fri, 4 May 2018 16:30:27 +0000 (16:30 +0000)]
[LFC] Set the invalidation root as the result of style change.
https://bugs.webkit.org/show_bug.cgi?id=185301

Reviewed by Antti Koivisto.

Compute/propagate the update type on the ancestor chain and return the invalidation root
so that LayoutContext could use it as the entry point for the next layout frame.

* layout/LayoutContext.cpp:
(WebCore::Layout::LayoutContext::updateLayout):
(WebCore::Layout::LayoutContext::styleChanged):
* layout/LayoutContext.h: order is not important.
* layout/blockformatting/BlockInvalidation.cpp:
(WebCore::Layout::invalidationStopsAtFormattingContextBoundary):
(WebCore::Layout::computeUpdateType):
(WebCore::Layout::computeUpdateTypeForAncestor):
(WebCore::Layout::BlockInvalidation::invalidate):
* layout/blockformatting/BlockInvalidation.h:
* layout/inlineformatting/InlineInvalidation.cpp:
(WebCore::Layout::InlineInvalidation::invalidate):
* layout/inlineformatting/InlineInvalidation.h:

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

2 years agoAdjust sandbox rules for simulator.
pvollan@apple.com [Fri, 4 May 2018 16:15:12 +0000 (16:15 +0000)]
Adjust sandbox rules for simulator.
https://bugs.webkit.org/show_bug.cgi?id=185275

Reviewed by Brent Fulgham.

Enable rules related to CoreMedia for minimal simulator.

* WebProcess/com.apple.WebProcess.sb.in:

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

2 years agoOptionsSet initializer list constructor should be constexpr
antti@apple.com [Fri, 4 May 2018 15:35:29 +0000 (15:35 +0000)]
OptionsSet initializer list constructor should be constexpr
https://bugs.webkit.org/show_bug.cgi?id=185298

Reviewed by Anders Carlsson.

* wtf/OptionSet.h:
(WTF::OptionSet::OptionSet):

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

2 years agoPeerConnection should have its connectionState closed even if doing gathering
youenn@apple.com [Fri, 4 May 2018 15:18:34 +0000 (15:18 +0000)]
PeerConnection should have its connectionState closed even if doing gathering
https://bugs.webkit.org/show_bug.cgi?id=185267

Reviewed by Darin Adler.

Source/WebCore:

Test: webrtc/addICECandidate-closed.html

In case m_iceConnectionState is closed, m_connectionState should also be set to closed
and RTCPeerConnection should be closed so as to reject any other call.

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::RTCPeerConnection::close):
(WebCore::RTCPeerConnection::updateConnectionState):

LayoutTests:

* webrtc/addICECandidate-closed-expected.txt: Added.
* webrtc/addICECandidate-closed.html: Added.

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

2 years ago[MSE][GStreamer] Delete properly the stream from the WebKitMediaSource
commit-queue@webkit.org [Fri, 4 May 2018 13:26:13 +0000 (13:26 +0000)]
[MSE][GStreamer] Delete properly the stream from the WebKitMediaSource
https://bugs.webkit.org/show_bug.cgi?id=185242

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

When the sourceBuffer is removed from mediasource, the appropriate stream is not
properly deleted from WebKitMediaSource, because the appsrc and parser elements
of the stream are not removed from the WebKitMediaSource bin.

This patch avoids the regression of r231089, see https://bugs.webkit.org/show_bug.cgi?id=185071

* platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:
(webKitMediaSrcFreeStream):

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

2 years ago[GTK] Epiphany (GNOME Web) says "Error downloading: Service Unavailable." when trying...
carlosgc@webkit.org [Fri, 4 May 2018 10:14:27 +0000 (10:14 +0000)]
[GTK] Epiphany (GNOME Web) says "Error downloading: Service Unavailable." when trying to download an image from discogs.com
https://bugs.webkit.org/show_bug.cgi?id=174730

Reviewed by Michael Catanzaro.

Source/WebCore:

Export ResourceRequestBase::hasHTTPHeaderField().

* platform/network/ResourceRequestBase.h:

Source/WebKit:

The problem is that we don't send any User-Agent HTTP header for downloads started by WebProcessPool::download().

* UIProcess/API/glib/WebKitDownload.cpp:
(webkitDownloadUpdateRequest): Helper to update the cached request.
(webkitDownloadStarted): Updated the cached request if we have one.
(webkit_download_get_request): Use webkitDownloadUpdateRequest().
* UIProcess/API/glib/WebKitDownloadClient.cpp:
* UIProcess/API/glib/WebKitDownloadPrivate.h:
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::download): Set the User-Agent HTTP header if there isn't any.

Tools:

Update unit tests to check that User-Agent header is included in HTTP download requests.

* TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
(testDownloadRemoteFile):
(testWebViewDownloadURI):
(testPolicyResponseDownload):
(testPolicyResponseDownloadCancel):
(testDownloadMIMEType):
(testContextMenuDownloadActions):

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

2 years ago[GTK] Some event tests failing after r230817
carlosgc@webkit.org [Fri, 4 May 2018 10:12:03 +0000 (10:12 +0000)]
[GTK] Some event tests failing after r230817
https://bugs.webkit.org/show_bug.cgi?id=185072

Reviewed by Michael Catanzaro.

Source/WebKit:

Do not send mouse move events to the WebProcess for crossing events during testing. WTR never generates crossing
events and they can confuse tests.

Fixes: editing/pasteboard/drag-link-with-data-transfer-adds-trusted-link-to-pasteboard.html
       fast/css/user-drag-none.html
       fast/events/context-activated-by-key-event.html
       fast/events/drag-selects-image.html
       fast/events/dropzone-005.html
       fast/events/mouse-click-events.html
       fast/events/mouse-cursor-change.html

* UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseCrossingNotifyEvent):

LayoutTests:

Remove expectations for tests that are passing now.

* platform/gtk/TestExpectations:

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

2 years agoMore aggressively terminate child processes when the connection to their parent proce...
cdumez@apple.com [Fri, 4 May 2018 06:03:42 +0000 (06:03 +0000)]
More aggressively terminate child processes when the connection to their parent process is severed
https://bugs.webkit.org/show_bug.cgi?id=177972
<rdar://problem/33317607>

Reviewed by Geoff Garen.

More aggressively terminate child processes when the connection to their parent process is severed.
Previously, we would dispatch to the main thread and then exit the process. This would sometimes
cause the process to say alive for 10 seconds until our watchdog would forcefully terminate the
process. This could happen in particular when the main thread is blocked on a synchronous IPC.

* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::didClose): Deleted.
* NetworkProcess/NetworkProcess.h:
* PluginProcess/PluginProcess.cpp:
(WebKit::PluginProcess::didClose): Deleted.
* PluginProcess/PluginProcess.h:
* Shared/ChildProcess.cpp:
(WebKit::ChildProcess::didClose):
(WebKit::didCloseOnConnectionWorkQueue):
(WebKit::ChildProcess::terminationTimerFired):
* Shared/ChildProcess.h:
* StorageProcess/StorageProcess.cpp:
(WebKit::StorageProcess::didClose): Deleted.
* StorageProcess/StorageProcess.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::didClose): Deleted.
* WebProcess/WebProcess.h:

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

2 years agoRemove std::random_shuffle
utatane.tea@gmail.com [Fri, 4 May 2018 05:32:41 +0000 (05:32 +0000)]
Remove std::random_shuffle
https://bugs.webkit.org/show_bug.cgi?id=185292

Reviewed by Darin Adler.

std::random_shuffle is deprecated in C++14 and removed in C++17,
since std::random_shuffle relies on rand and srand.
Use std::shuffle instead.

* jit/BinarySwitch.cpp:
(JSC::RandomNumberGenerator::RandomNumberGenerator):
(JSC::RandomNumberGenerator::operator()):
(JSC::RandomNumberGenerator::min):
(JSC::RandomNumberGenerator::max):
(JSC::BinarySwitch::build):

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

2 years agoUse subprocess.call instead of os.system to handle path with spaces
utatane.tea@gmail.com [Fri, 4 May 2018 05:28:12 +0000 (05:28 +0000)]
Use subprocess.call instead of os.system to handle path with spaces
https://bugs.webkit.org/show_bug.cgi?id=185291

Reviewed by Darin Adler.

If gperf path includes spaces, these python scripts fail to execute gperf.
We use subprocess module instead of os.system to invoke gperf.

* css/makeSelectorPseudoClassAndCompatibilityElementMap.py:
* css/makeSelectorPseudoElementsMap.py:
* platform/network/create-http-header-name-table:

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

2 years agoDon't prevent CreateThis being folded to NewObject when the structure is poly proto
sbarati@apple.com [Fri, 4 May 2018 04:33:53 +0000 (04:33 +0000)]
Don't prevent CreateThis being folded to NewObject when the structure is poly proto
https://bugs.webkit.org/show_bug.cgi?id=185177

Reviewed by Filip Pizlo.

JSTests:

* microbenchmarks/construct-poly-proto-object.js: Added.
(foo.A):
(foo):
* stress/allocation-sinking-new-object-with-poly-proto.js: Added.
(foo.A):
(foo):
(makePolyProto):
(bar):
(baz):

Source/JavaScriptCore:

This patch teaches the DFG/FTL how to constant fold CreateThis with
a known poly proto Structure to NewObject. We do it by emitting a NewObject
followed by a PutByOffset for the prototype value.

We make it so that ObjectAllocationProfile holds the prototype value.
This is sound because JSFunction clears that profile when its 'prototype'
field changes.

This patch also renames underscoreProtoPrivateName to polyProtoName since
that name was nonsensical: it was only used for poly proto.

This is a 2x speedup on the get_callee_polymorphic microbenchmark. I had
regressed that benchmark when I first introduced poly proto.

* builtins/BuiltinNames.cpp:
* builtins/BuiltinNames.h:
(JSC::BuiltinNames::BuiltinNames):
(JSC::BuiltinNames::polyProtoName const):
(JSC::BuiltinNames::underscoreProtoPrivateName const): Deleted.
* bytecode/ObjectAllocationProfile.h:
(JSC::ObjectAllocationProfile::prototype):
(JSC::ObjectAllocationProfile::clear):
(JSC::ObjectAllocationProfile::visitAggregate):
* bytecode/ObjectAllocationProfileInlines.h:
(JSC::ObjectAllocationProfile::initializeProfile):
* dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
* dfg/DFGOperations.cpp:
* runtime/CommonSlowPaths.cpp:
(JSC::SLOW_PATH_DECL):
* runtime/FunctionRareData.h:
* runtime/Structure.cpp:
(JSC::Structure::create):

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

2 years agoUnreviewed, attempt to fix WinCairo build failure
utatane.tea@gmail.com [Fri, 4 May 2018 01:50:47 +0000 (01:50 +0000)]
Unreviewed, attempt to fix WinCairo build failure
https://bugs.webkit.org/show_bug.cgi?id=185218

* platform/text/win/LocaleWin.cpp:
(WebCore::LocaleWin::getLocaleInfoString):

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

2 years agoOSR entry pruning of Program Bytecodes doesn't take into account try/catch
msaboff@apple.com [Fri, 4 May 2018 01:11:47 +0000 (01:11 +0000)]
OSR entry pruning of Program Bytecodes doesn't take into account try/catch
https://bugs.webkit.org/show_bug.cgi?id=185281

Reviewed by Saam Barati.

JSTests:

New regression test.

* stress/baseline-osrentry-catch-is-reachable.js: Added.
(i.j.catch):

Source/JavaScriptCore:

When we compute bytecode block reachability, we need to take into account blocks
containing try/catch.

* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):

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

2 years agoUse default std::optional if it is provided
utatane.tea@gmail.com [Fri, 4 May 2018 01:00:18 +0000 (01:00 +0000)]
Use default std::optional if it is provided
https://bugs.webkit.org/show_bug.cgi?id=185159

Reviewed by Michael Catanzaro.

Source/WebKit:

* Shared/SandboxExtension.h:
(WebKit::SandboxExtension::Handle::decode):
* Shared/TouchBarMenuItemData.cpp:
(WebKit::TouchBarMenuItemData::decode):

Source/WTF:

* wtf/Expected.h:
* wtf/Optional.h:
Do not use <optional> for clang currently.
(WTF::valueOrCompute):

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

2 years agoARM: Wrong offset for operand rt in disassembler
commit-queue@webkit.org [Fri, 4 May 2018 00:55:28 +0000 (00:55 +0000)]
ARM: Wrong offset for operand rt in disassembler
https://bugs.webkit.org/show_bug.cgi?id=184083

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

* disassembler/ARMv7/ARMv7DOpcode.h:
(JSC::ARMv7Disassembler::ARMv7DOpcodeVMOVDoublePrecision::rt):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVMOVSinglePrecision::rt):

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

2 years agoARM: Support vstr in disassembler
commit-queue@webkit.org [Fri, 4 May 2018 00:54:24 +0000 (00:54 +0000)]
ARM: Support vstr in disassembler
https://bugs.webkit.org/show_bug.cgi?id=184084

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

* disassembler/ARMv7/ARMv7DOpcode.cpp:
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDRSTR::format):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::format): Deleted.
* disassembler/ARMv7/ARMv7DOpcode.h:
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDRSTR::opName):
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::condition): Deleted.
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::uBit): Deleted.
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::rn): Deleted.
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::vd): Deleted.
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::doubleReg): Deleted.
(JSC::ARMv7Disassembler::ARMv7DOpcodeVLDR::immediate8): Deleted.

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

2 years agoInvoke ensureArrayStorage for all arguments
commit-queue@webkit.org [Fri, 4 May 2018 00:49:04 +0000 (00:49 +0000)]
Invoke ensureArrayStorage for all arguments
https://bugs.webkit.org/show_bug.cgi?id=185247

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

ensureArrayStorage was only invoked for first argument in each loop iteration.

* jsc.cpp:
(functionEnsureArrayStorage):

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

2 years agoMake it easy to log compile times for all optimizing tiers
fpizlo@apple.com [Fri, 4 May 2018 00:41:58 +0000 (00:41 +0000)]
Make it easy to log compile times for all optimizing tiers
https://bugs.webkit.org/show_bug.cgi?id=185270

Reviewed by Keith Miller.

This makes --logPhaseTimes=true enable logging of phase times for DFG and B3 using a common
helper class, CompilerTimingScope. This used to be called B3::TimingScope and only B3 used
it.

This should help us reduce compile times by telling us where to look. So, far, it looks like
CFA is the worst.

* JavaScriptCore.xcodeproj/project.pbxproj:
* Sources.txt:
* b3/B3Common.cpp:
(JSC::B3::shouldMeasurePhaseTiming): Deleted.
* b3/B3Common.h:
* b3/B3TimingScope.cpp: Removed.
* b3/B3TimingScope.h:
(JSC::B3::TimingScope::TimingScope):
* dfg/DFGPhase.h:
(JSC::DFG::runAndLog):
* dfg/DFGPlan.cpp:
(JSC::DFG::Plan::compileInThread):
* tools/CompilerTimingScope.cpp: Added.
(JSC::CompilerTimingScope::CompilerTimingScope):
(JSC::CompilerTimingScope::~CompilerTimingScope):
* tools/CompilerTimingScope.h: Added.
* runtime/Options.cpp:
(JSC::recomputeDependentOptions):
* runtime/Options.h:

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

2 years agoStrings should not be allocated in a gigacage
fpizlo@apple.com [Fri, 4 May 2018 00:40:18 +0000 (00:40 +0000)]
Strings should not be allocated in a gigacage
https://bugs.webkit.org/show_bug.cgi?id=185218

Reviewed by Saam Barati.
Source/bmalloc:

This removes the string gigacage.

Putting strings in a gigacage prevents read gadgets. The other things that get to be in gigacages
are there to prevent read-write gadgets.

Also, putting strings in a gigacage seems to have been a bigger regression than putting other
things in gigacages.

Therefore, to maximize the benefit/cost ratio of gigacages, we should evict strings from them. If
we want to throw away perf for security, there are more beneficial things to sacrifice.

* bmalloc/Gigacage.h:
(Gigacage::name):
(Gigacage::basePtr):
(Gigacage::size):
(Gigacage::forEachKind):
* bmalloc/HeapKind.h:
(bmalloc::isGigacage):
(bmalloc::gigacageKind):
(bmalloc::heapKind):
(bmalloc::isActiveHeapKindAfterEnsuringGigacage):
(bmalloc::mapToActiveHeapKindAfterEnsuringGigacage):

Source/JavaScriptCore:

* runtime/JSBigInt.cpp:
(JSC::JSBigInt::toStringGeneric):
* runtime/JSString.cpp:
(JSC::JSRopeString::resolveRopeToAtomicString const):
(JSC::JSRopeString::resolveRope const):
* runtime/JSString.h:
(JSC::JSString::create):
(JSC::JSString::createHasOtherOwner):
* runtime/VM.h:
(JSC::VM::gigacageAuxiliarySpace):

Source/WebCore:

No new tests because no new behavior.

* Modules/indexeddb/server/IDBSerialization.cpp:
(WebCore::decodeKey):
* bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneDeserializer::readString):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::normalizeSpaces):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::ExternalCharacterTokenBuffer::takeRemainingWhitespace):
* platform/URLParser.cpp:
(WebCore::percentEncodeByte):
(WebCore::serializeURLEncodedForm):
(WebCore::URLParser::serialize):
* platform/URLParser.h:
* platform/graphics/FourCC.cpp:
(WebCore::FourCC::toString const):
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::ReplicaState::cloneID const):
* platform/text/LocaleICU.cpp:
(WebCore::LocaleICU::decimalSymbol):
(WebCore::LocaleICU::decimalTextAttribute):
(WebCore::getDateFormatPattern):
(WebCore::LocaleICU::createLabelVector):
(WebCore::getFormatForSkeleton):
* platform/win/FileSystemWin.cpp:
(WebCore::FileSystem::getFinalPathName):
(WebCore::FileSystem::pathByAppendingComponent):
(WebCore::FileSystem::storageDirectory):

Source/WTF:

* WTF.xcodeproj/project.pbxproj:
* wtf/Deque.h:
* wtf/Forward.h:
* wtf/Gigacage.h:
(Gigacage::name):
(Gigacage::basePtr):
* wtf/Vector.h:
(WTF::VectorBufferBase::allocateBuffer):
(WTF::VectorBufferBase::tryAllocateBuffer):
(WTF::VectorBufferBase::reallocateBuffer):
(WTF::VectorBufferBase::deallocateBuffer):
(WTF::minCapacity>::Vector):
(WTF::=):
(WTF::minCapacity>::contains const):
(WTF::minCapacity>::findMatching const):
(WTF::minCapacity>::find const):
(WTF::minCapacity>::reverseFind const):
(WTF::minCapacity>::appendIfNotContains):
(WTF::minCapacity>::fill):
(WTF::minCapacity>::appendRange):
(WTF::minCapacity>::expandCapacity):
(WTF::minCapacity>::tryExpandCapacity):
(WTF::minCapacity>::resize):
(WTF::minCapacity>::resizeToFit):
(WTF::minCapacity>::shrink):
(WTF::minCapacity>::grow):
(WTF::minCapacity>::asanSetInitialBufferSizeTo):
(WTF::minCapacity>::asanSetBufferSizeToFullCapacity):
(WTF::minCapacity>::asanBufferSizeWillChangeTo):
(WTF::minCapacity>::reserveCapacity):
(WTF::minCapacity>::tryReserveCapacity):
(WTF::minCapacity>::reserveInitialCapacity):
(WTF::minCapacity>::shrinkCapacity):
(WTF::minCapacity>::append):
(WTF::minCapacity>::tryAppend):
(WTF::minCapacity>::constructAndAppend):
(WTF::minCapacity>::tryConstructAndAppend):
(WTF::minCapacity>::appendSlowCase):
(WTF::minCapacity>::constructAndAppendSlowCase):
(WTF::minCapacity>::tryConstructAndAppendSlowCase):
(WTF::minCapacity>::uncheckedAppend):
(WTF::minCapacity>::appendVector):
(WTF::minCapacity>::insert):
(WTF::minCapacity>::insertVector):
(WTF::minCapacity>::remove):
(WTF::minCapacity>::removeFirst):
(WTF::minCapacity>::removeFirstMatching):
(WTF::minCapacity>::removeAll):
(WTF::minCapacity>::removeAllMatching):
(WTF::minCapacity>::reverse):
(WTF::minCapacity>::map const):
(WTF::minCapacity>::releaseBuffer):
(WTF::minCapacity>::checkConsistency):
(WTF::swap):
(WTF::operator==):
(WTF::operator!=):
(WTF::removeRepeatedElements):
(WTF::Malloc>::Vector): Deleted.
(WTF::Malloc>::contains const): Deleted.
(WTF::Malloc>::findMatching const): Deleted.
(WTF::Malloc>::find const): Deleted.
(WTF::Malloc>::reverseFind const): Deleted.
(WTF::Malloc>::appendIfNotContains): Deleted.
(WTF::Malloc>::fill): Deleted.
(WTF::Malloc>::appendRange): Deleted.
(WTF::Malloc>::expandCapacity): Deleted.
(WTF::Malloc>::tryExpandCapacity): Deleted.
(WTF::Malloc>::resize): Deleted.
(WTF::Malloc>::resizeToFit): Deleted.
(WTF::Malloc>::shrink): Deleted.
(WTF::Malloc>::grow): Deleted.
(WTF::Malloc>::asanSetInitialBufferSizeTo): Deleted.
(WTF::Malloc>::asanSetBufferSizeToFullCapacity): Deleted.
(WTF::Malloc>::asanBufferSizeWillChangeTo): Deleted.
(WTF::Malloc>::reserveCapacity): Deleted.
(WTF::Malloc>::tryReserveCapacity): Deleted.
(WTF::Malloc>::reserveInitialCapacity): Deleted.
(WTF::Malloc>::shrinkCapacity): Deleted.
(WTF::Malloc>::append): Deleted.
(WTF::Malloc>::tryAppend): Deleted.
(WTF::Malloc>::constructAndAppend): Deleted.
(WTF::Malloc>::tryConstructAndAppend): Deleted.
(WTF::Malloc>::appendSlowCase): Deleted.
(WTF::Malloc>::constructAndAppendSlowCase): Deleted.
(WTF::Malloc>::tryConstructAndAppendSlowCase): Deleted.
(WTF::Malloc>::uncheckedAppend): Deleted.
(WTF::Malloc>::appendVector): Deleted.
(WTF::Malloc>::insert): Deleted.
(WTF::Malloc>::insertVector): Deleted.
(WTF::Malloc>::remove): Deleted.
(WTF::Malloc>::removeFirst): Deleted.
(WTF::Malloc>::removeFirstMatching): Deleted.
(WTF::Malloc>::removeAll): Deleted.
(WTF::Malloc>::removeAllMatching): Deleted.
(WTF::Malloc>::reverse): Deleted.
(WTF::Malloc>::map const): Deleted.
(WTF::Malloc>::releaseBuffer): Deleted.
(WTF::Malloc>::checkConsistency): Deleted.
* wtf/text/AtomicStringImpl.h:
* wtf/text/CString.cpp:
(WTF::CStringBuffer::createUninitialized):
* wtf/text/CString.h:
* wtf/text/StringBuffer.h:
(WTF::StringBuffer::StringBuffer):
(WTF::StringBuffer::~StringBuffer):
(WTF::StringBuffer::resize):
* wtf/text/StringImpl.cpp:
(WTF::StringImpl::~StringImpl):
(WTF::StringImpl::destroy):
(WTF::StringImpl::createUninitializedInternalNonEmpty):
(WTF::StringImpl::reallocateInternal):
(WTF::StringImpl::releaseAssertCaged const): Deleted.
* wtf/text/StringImpl.h:
(WTF::StringImpl::createSubstringSharingImpl):
(WTF::StringImpl::tryCreateUninitialized):
(WTF::StringImpl::adopt):
(WTF::StringImpl::assertCaged const): Deleted.
* wtf/text/StringMalloc.cpp: Removed.
* wtf/text/StringMalloc.h: Removed.
* wtf/text/StringVector.h: Removed.
* wtf/text/SymbolImpl.h:
* wtf/text/UniquedStringImpl.h:
* wtf/text/WTFString.h:
(WTF::String::adopt):
(WTF::String::assertCaged const): Deleted.
(WTF::String::releaseAssertCaged const): Deleted.

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

2 years ago[WinCairo] Test archive must use Python zipfile, just like build product.
ross.kirsling@sony.com [Thu, 3 May 2018 23:54:00 +0000 (23:54 +0000)]
[WinCairo] Test archive must use Python zipfile, just like build product.
https://bugs.webkit.org/show_bug.cgi?id=185265

Reviewed by Per Arne Vollan.

* BuildSlaveSupport/test-result-archive:
(archive_test_results):
Copy over Win32-oriented archiving logic from built-product-archive.

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

2 years agoWidgets should hold a WeakPtr to their parents
bfulgham@apple.com [Thu, 3 May 2018 23:51:10 +0000 (23:51 +0000)]
Widgets should hold a WeakPtr to their parents
https://bugs.webkit.org/show_bug.cgi?id=185239
<rdar://problem/39741250>

Reviewed by Zalan Bujtas.

* platform/ScrollView.h:
(WebCore::ScrollView::weakPtrFactory): Added.
* platform/Widget.cpp:
(WebCore::Widget::init): Don't perform an unnecessary assignment.
(WebCore::Widget::setParent): Grab a WeakPtr to the parent ScrollView.
* platform/Widget.h:
(WebCore::Widget::parent const): Change type to a WeakPtr.

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

2 years agoRevert the unitended changes in r231329.
rniwa@webkit.org [Thu, 3 May 2018 23:43:45 +0000 (23:43 +0000)]
Revert the unitended changes in r231329.

* http/tests/media/video-play-stall.html: Replaced with LayoutTests/http/tests/media/video-play-stall.html.
* platform/mac/TestExpectations:

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

2 years agoUse pointer instead of std::optional<T&>
utatane.tea@gmail.com [Thu, 3 May 2018 23:34:54 +0000 (23:34 +0000)]
Use pointer instead of std::optional<T&>
https://bugs.webkit.org/show_bug.cgi?id=185186

Reviewed by Alex Christensen.

std::optional<T&> is not accepted in C++17 spec.
In this patch, we replace it with T*, which is well-aligned to
WebKit's convention.

* Modules/mediastream/RTCPeerConnection.cpp:
(WebCore::iceServersFromConfiguration):
(WebCore::RTCPeerConnection::initializeConfiguration):
(WebCore::RTCPeerConnection::setConfiguration):
* css/parser/CSSParser.cpp:
(WebCore::CSSParser::parseSystemColor):
* css/parser/CSSParser.h:
* dom/DatasetDOMStringMap.cpp:
(WebCore::DatasetDOMStringMap::item const):
(WebCore::DatasetDOMStringMap::namedItem const):
(WebCore:: const): Deleted.
* dom/DatasetDOMStringMap.h:
* dom/Element.cpp:
(WebCore::Element::insertAdjacentHTML):
* dom/Element.h:
* html/canvas/CanvasStyle.cpp:
(WebCore::parseColor):
* inspector/DOMEditor.cpp:
* platform/network/curl/CurlFormDataStream.cpp:
(WebCore::CurlFormDataStream::getPostData):
(): Deleted.
* platform/network/curl/CurlFormDataStream.h:
* platform/network/curl/CurlRequest.cpp:
(WebCore::CurlRequest::setupPOST):
* testing/MockCDMFactory.cpp:
(WebCore::MockCDMFactory::keysForSessionWithID const):
(WebCore::MockCDMInstance::updateLicense):
(WebCore:: const): Deleted.
* testing/MockCDMFactory.h:

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

2 years agoUnreviewed, fix 32-bit profile offset for change in bytecode
keith_miller@apple.com [Thu, 3 May 2018 23:21:37 +0000 (23:21 +0000)]
Unreviewed, fix 32-bit profile offset for change in bytecode
length of the get_by_id and get_array_length opcodes.

* llint/LowLevelInterpreter32_64.asm:

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

2 years agoStop using an iframe's id as fallback if its name attribute is not set
cdumez@apple.com [Thu, 3 May 2018 23:18:29 +0000 (23:18 +0000)]
Stop using an iframe's id as fallback if its name attribute is not set
https://bugs.webkit.org/show_bug.cgi?id=11388

Reviewed by Geoff Garen.

Source/WebCore:

WebKit had logic to use an iframe's id as fallback name when its name
content attribute is not set. This behavior was not standard and did not
match other browsers:
- https://html.spec.whatwg.org/#attr-iframe-name

Gecko / Trident never behaved this way. Blink was aligned with us until
they started to match the specification in:
- https://bugs.chromium.org/p/chromium/issues/detail?id=347169

This WebKit quirk was causing some Web-compatibility issues because it
would affect the behavior of Window's name property getter when trying
to look up an iframe by id. Because of Window's named property getter
behavior [1], we would return the frame's contentWindow instead of the
iframe element itself.

[1] https://html.spec.whatwg.org/multipage/window-object.html#named-access-on-the-window-object

Test: fast/dom/Window/named-getter-frame-id.html

* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::openURL):
(WebCore::HTMLFrameElementBase::parseAttribute):
(WebCore::HTMLFrameElementBase::didFinishInsertingNode):
* html/HTMLFrameElementBase.h:

LayoutTests:

* fast/dom/Window/named-getter-frame-id-expected.txt: Added.
* fast/dom/Window/named-getter-frame-id.html: Added.
Add layout test coverage.

* fast/dom/Geolocation/srcdoc-getCurrentPosition-expected.txt:
* fast/dom/Geolocation/srcdoc-watchPosition-expected.txt:
* fast/dom/HTMLAnchorElement/anchor-in-noscroll-iframe-crash.html:
* fast/dom/Window/window-special-properties-expected.txt:
* fast/frames/iframe-no-name-expected.txt:
* fast/frames/iframe-no-name.html:
* fast/layers/prevent-hit-test-during-layout.html:
* fast/xmlhttprequest/xmlhttprequest-no-file-access-expected.txt:
* http/tests/security/clipboard/copy-paste-html-cross-origin-iframe-across-origin.html:
* http/tests/security/contentSecurityPolicy/iframe-blank-url-programmatically-add-external-script-expected.txt:
* http/tests/security/cross-origin-reified-window-property-access.html:
* http/tests/storageAccess/request-and-grant-storage-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-non-recent-user-interaction-and-try-access-from-right-frame-expected.txt:
* http/tests/storageAccess/request-and-grant-storage-access-cross-origin-sandboxed-iframe-from-prevalent-domain-with-non-recent-user-interaction-but-try-access-from-wrong-frame-expected.txt:
* http/tests/webrtc/filtering-ice-candidate-same-origin-frame.html:
* http/wpt/beacon/keepalive-after-navigation-expected.txt:
* http/wpt/cache-storage/cache-remove-twice.html:
Update some layout tests that relied on our old (non-standard) behavior.

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

2 years ago[iOS] Internal text and audio tracks not in fullscreen menu
eric.carlson@apple.com [Thu, 3 May 2018 22:10:56 +0000 (22:10 +0000)]
[iOS] Internal text and audio tracks not in fullscreen menu
https://bugs.webkit.org/show_bug.cgi?id=185268
<rdar://problem/38673440>

Reviewed by Jer Noble.

* platform/cocoa/PlaybackSessionModelMediaElement.mm:
(WebCore::PlaybackSessionModelMediaElement::setMediaElement): 'addtrack' and 'removetrack'
events are fired at the track lists, not the media element.

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

2 years agoUsing image map inside a shadow tree results hits a release assert in DocumentOrdered...
rniwa@webkit.org [Thu, 3 May 2018 21:34:10 +0000 (21:34 +0000)]
Using image map inside a shadow tree results hits a release assert in DocumentOrderedMap::add
https://bugs.webkit.org/show_bug.cgi?id=185238

Reviewed by Antti Koivisto.

Source/WebCore:

The bug was caused by DocumentOrderedMap for the image elements with usemap being stored in Document
even if those image elements were in a shadow tree. Fixed the bug by moving the map to TreeScope.

Test: fast/images/imagemap-in-nested-shadow-tree.html
      fast/images/imagemap-in-shadow-tree.html

* dom/Document.cpp:
(WebCore::Document::addImageElementByUsemap): Moved to TreeScope.
(WebCore::Document::removeImageElementByUsemap): Ditto.
(WebCore::Document::imageElementByUsemap const): Ditto.
* dom/Document.h:
* dom/TreeScope.cpp:
(WebCore::TreeScope::destroyTreeScopeData): Clear m_imagesByUsemap as well as m_elementsByName.
(WebCore::TreeScope::getImageMap const): Removed the code to parse usemap. RenderImage::imageMap()
which used to call this function with the raw value of the usemap content attribute now calls it
via HTMLImageElement::associatedMapElement(), which uses the parsed usemap.
(WebCore::TreeScope::addImageElementByUsemap): Moved from Document.
(WebCore::TreeScope::removeImageElementByUsemap): Ditto.
(WebCore::TreeScope::imageElementByUsemap const): Ditto.
* dom/TreeScope.h:
* html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::parseAttribute):
(WebCore::HTMLImageElement::insertedIntoAncestor): This image element can be associated with a map element
if it's connected to a document.
(WebCore::HTMLImageElement::removedFromAncestor):
(WebCore::HTMLImageElement::associatedMapElement const):
* html/HTMLImageElement.h:
* html/HTMLMapElement.cpp:
(WebCore::HTMLMapElement::imageElement):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::imageMap const):

LayoutTests:

* fast/images/imagemap-in-nested-shadow-tree-expected.txt: Added.
* fast/images/imagemap-in-nested-shadow-tree.html: Added.
* fast/images/imagemap-in-shadow-tree-expected.txt: Added.
* fast/images/imagemap-in-shadow-tree.html: Added.

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

2 years agocleanup modules usage for the Test262-Runner
commit-queue@webkit.org [Thu, 3 May 2018 21:27:58 +0000 (21:27 +0000)]
cleanup modules usage for the Test262-Runner
https://bugs.webkit.org/show_bug.cgi?id=185263

Patch by Leo Balter <leonardo.balter@gmail.com> on 2018-05-03
Reviewed by Michael Saboff.

* Scripts/test262-runner:
* Scripts/test262/Runner.pm:
(processCLI):

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

2 years ago[WebGL] Add runtime flag for enabling ASTC support in WebGL
commit-queue@webkit.org [Thu, 3 May 2018 21:08:40 +0000 (21:08 +0000)]
[WebGL] Add runtime flag for enabling ASTC support in WebGL
https://bugs.webkit.org/show_bug.cgi?id=184840

Patch by Justin Fan <justin_fan@apple.com> on 2018-05-03
Reviewed by Myles C. Maxfield.

Added runtime flag for ASTC support in WebGL, to turn on/off when extension is implemented.

Source/WebCore:

* page/RuntimeEnabledFeatures.h:
(WebCore::RuntimeEnabledFeatures::setWebGLCompressedTextureASTCSupportEnabled):
(WebCore::RuntimeEnabledFeatures::webGLCompressedTextureASTCSupportEnabled const):

Source/WebKit:

* Shared/WebPreferences.yaml:

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

2 years agoUnreviewed build fix after <https://trac.webkit.org/changeset/231282>.
krollin@apple.com [Thu, 3 May 2018 20:55:44 +0000 (20:55 +0000)]
Unreviewed build fix after <https://trac.webkit.org/changeset/231282>.

* NetworkProcess/NetworkActivityTracker.h:

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

2 years agoRemove [NoInterfaceObject] from DOMRectList
commit-queue@webkit.org [Thu, 3 May 2018 20:52:46 +0000 (20:52 +0000)]
Remove [NoInterfaceObject] from DOMRectList
https://bugs.webkit.org/show_bug.cgi?id=185255

Patch by Chris Nardi <cnardi@chromium.org> on 2018-05-03
Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

Update Geometry IDL test from upstream and update expectations.

* web-platform-tests/css/geometry/interfaces-expected.txt:
* web-platform-tests/css/geometry/interfaces.worker-expected.txt:
* web-platform-tests/interfaces/geometry.idl:

Source/WebCore:

In https://github.com/w3c/fxtf-drafts/issues/233, [NoInterfaceObject] was removed
from DOMRectList. Remove it from our implementation to match the spec, as well as
Chrome and Firefox.

Updated web platform tests IDL test for the Geometry spec.

* dom/DOMRectList.idl:

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

2 years ago[iOS] Provide audio route information when invoking AirPlay picker
eric.carlson@apple.com [Thu, 3 May 2018 20:39:33 +0000 (20:39 +0000)]
[iOS] Provide audio route information when invoking AirPlay picker
https://bugs.webkit.org/show_bug.cgi?id=185199
<rdar://problem/39853103>

Another attempt at an unreviewed build fix.

* pal/spi/mac/AVFoundationSPI.h:

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