WebKit-https.git
2 months agoconfigSizeToProtect should be 16KB
sbarati@apple.com [Sat, 14 Mar 2020 04:11:44 +0000 (04:11 +0000)]
configSizeToProtect should be 16KB
https://bugs.webkit.org/show_bug.cgi?id=209068

Reviewed by Keith Miller.

Source/bmalloc:

* bmalloc/Gigacage.h:

Source/JavaScriptCore:

* runtime/JSCConfig.h:

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

2 months agoSVGMatrix should have the access right of its owner SVGTransform always
said@apple.com [Sat, 14 Mar 2020 03:11:34 +0000 (03:11 +0000)]
SVGMatrix should have the access right of its owner SVGTransform always
https://bugs.webkit.org/show_bug.cgi?id=207462

Reviewed by Simon Fraser.

Source/WebCore:

The SVGMatrix needs to be reattached to its owner SVGTransform when the
access right of this owner changes. The access right of the owner changes
when it gets attached to or detached from a higher level owner.

Test: svg/dom/SVGTransformList-anim-read-only.html

* svg/SVGTransform.h:
* svg/properties/SVGProperty.h:
(WebCore::SVGProperty::attach):
(WebCore::SVGProperty::detach):
(WebCore::SVGProperty::reattach):

LayoutTests:

* svg/dom/SVGTransformList-anim-read-only-expected.txt: Added.
* svg/dom/SVGTransformList-anim-read-only.html: Added.

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

2 months agoWKWebView._negotiatedLegacyTLS should be correct after back/forward navigations
commit-queue@webkit.org [Sat, 14 Mar 2020 02:10:54 +0000 (02:10 +0000)]
WKWebView._negotiatedLegacyTLS should be correct after back/forward navigations
https://bugs.webkit.org/show_bug.cgi?id=209011
<rdar://problem/59370588>

Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-13
Reviewed by Youenn Fablet.

Source/WebCore:

This is basically r258343 but for legacy TLS negotiation instead of plaintext HTTP use.

* dom/SecurityContext.h:
(WebCore::SecurityContext::usedLegacyTLS const):
(WebCore::SecurityContext::setUsedLegacyTLS):
* history/CachedFrame.cpp:
(WebCore::CachedFrame::usedLegacyTLS const):
(WebCore::CachedFrame::setUsedLegacyTLS): Deleted.
* history/CachedFrame.h:
(WebCore::CachedFrame::usedLegacyTLS const): Deleted.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):
* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::includeCertificateInfo const):
* platform/network/ResourceResponseBase.h:
(WebCore::ResourceResponseBase::setUsedLegacyTLS):

Source/WebKit:

* NetworkProcess/NetworkDataTask.cpp:
(WebKit::NetworkDataTask::didReceiveResponse):
* NetworkProcess/NetworkLoad.cpp:
(WebKit::NetworkLoad::notifyDidReceiveResponse):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::usedLegacyTLS): Deleted.
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::didReceiveResponse):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::savePlatformDataToCachedFrame):

Tools:

* TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:
(TestWebKitAPI::TEST):

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

2 months ago[watchOS] Don’t display empty text suggestions in Quickboard when editing input fields
wenson_hsieh@apple.com [Sat, 14 Mar 2020 02:01:28 +0000 (02:01 +0000)]
[watchOS] Don’t display empty text suggestions in Quickboard when editing input fields
https://bugs.webkit.org/show_bug.cgi?id=209089

Reviewed by Tim Horton.

Source/WebKit:

Handle text suggestions that lack `displayText` gracefully in Quickboard by not showing them as AutoFill
candidates. Currently, they are presented as blank collection view cells in Quickboard, which leads to a
confusing user experience.

Test: WKWebViewAutoFillTests.DoNotShowBlankTextSuggestions

* UIProcess/ios/forms/WKFocusedFormControlView.mm:
(-[WKFocusedFormControlView setSuggestions:]):

Tools:

Add an API test for watchOS. Also rename a few occurrences of "Autofill" to "AutoFill", to reflect the official
marketing name for the feature.

* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(runUntilReceivesAutoplayEvent):

Additionally fix the watchOS engineering build for arm64_32, which was failing due to comparisons between 64-bit
and 32-bit integers. This is because this function took a `WKAutoplayEvent` (a 32-bit integer), but compared
against the `_WKAutoplayEvent` type (an NSInteger that is 64 bits on this architecture). There didn't seem to
be any compelling reason to compare against different types here (especially since we only set
`receivedAutoplayEvent` under the Objective-C delegate method that provides a `_WKAutoplayEvent`), so I changed
these all to be `_WKAutoplayEvent`.

* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
(-[AutoFillTestView _autofillInputView]):
(-[AutoFillTestView textInputHasAutoFillContext]):
(TestWebKitAPI::TEST):
(-[AutofillTestView initWithFrame:]): Deleted.
(-[AutofillTestView _autofillInputView]): Deleted.
(-[AutofillTestView textInputHasAutofillContext]): Deleted.
* TestWebKitAPI/ios/UIKitSPI.h:

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

2 months agoClean up sandbox violations found during testing
bfulgham@apple.com [Sat, 14 Mar 2020 01:43:54 +0000 (01:43 +0000)]
Clean up sandbox violations found during testing
https://bugs.webkit.org/show_bug.cgi?id=209096
<rdar://problem/59931477>

Reviewed by Geoffrey Garen.

Remove telemetry from some items, and allow access to some IOKit properties
needed for media playback on macOS and iOS.

* Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
* WebProcess/com.apple.WebProcess.sb.in:

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

2 months ago[Tree building] Block::attachIgnoringContinuation should allow inline tables as befor...
zalan@apple.com [Sat, 14 Mar 2020 01:43:38 +0000 (01:43 +0000)]
[Tree building] Block::attachIgnoringContinuation should allow inline tables as before child container
https://bugs.webkit.org/show_bug.cgi?id=209095
<rdar://problem/59837588>

Reviewed by Simon Fraser.

Source/WebCore:

It's perfectly valid to have an inline table as the anonymous container for the before child.
It'll get wrapped inside an anonymous block right before we insert the block box candidate, so
the final result will be something like:

new block level child (this is the child we are inserting)
anonymous block wrapper
  inline table (this is the before child's inline container)
    before child

Test: fast/table/before-child-is-inline-table.html

* rendering/updating/RenderTreeBuilderBlock.cpp:
(WebCore::RenderTreeBuilder::Block::attachIgnoringContinuation):

LayoutTests:

* fast/table/before-child-is-inline-table-expected.txt: Added.
* fast/table/before-child-is-inline-table.html: Added.

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

2 months ago[GPU Process] GraphicsContextStateChange::apply() should process ShadowsIgnoreTransfo...
sabouhallawa@apple.com [Sat, 14 Mar 2020 01:27:59 +0000 (01:27 +0000)]
[GPU Process] GraphicsContextStateChange::apply() should process ShadowsIgnoreTransformsChange before processing ShadowChange
https://bugs.webkit.org/show_bug.cgi?id=209071

Reviewed by Darin Adler.

Ensure GraphicsContextStateChange::apply() calls shadowsIgnoreTransforms()
before calling setLegacyShadow() or setShadow().

Test: This patch fixes the following tests when running:
"run-webkit-tests --internal-feature RenderCanvasInGPUProcessEnabled"
    fast/canvas/canvas-image-shadow.html
    fast/canvas/canvas-scale-drawImage-shadow.html
    fast/canvas/canvas-scale-fillPath-shadow.html
    fast/canvas/canvas-scale-fillRect-shadow.html
    fast/canvas/canvas-scale-shadowBlur.html
    fast/canvas/canvas-transforms-fillRect-shadow.html
    fast/canvas/fillText-shadow.html

* platform/graphics/GraphicsContext.cpp:
(WebCore::GraphicsContextStateChange::apply const):

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

2 months agoUnreviewed, fix JSC / test262 tests
ysuzuki@apple.com [Sat, 14 Mar 2020 01:01:23 +0000 (01:01 +0000)]
Unreviewed, fix JSC / test262 tests
https://bugs.webkit.org/show_bug.cgi?id=209033
<rdar://problem/58946936>

Follow-up change for DisallowGC causes crash because CodeBlock is nullptr when function call is non JS calls.

* interpreter/Interpreter.cpp:
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):

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

2 months agoMissing arithMode for ArithAbs and ArithNegate in DFGClobberize
tzagallo@apple.com [Sat, 14 Mar 2020 00:19:24 +0000 (00:19 +0000)]
Missing arithMode for ArithAbs and ArithNegate in DFGClobberize
https://bugs.webkit.org/show_bug.cgi?id=208685
<rdar://problem/60115088>

Reviewed by Saam Barati.

In the pure case of ArithNegate and ArithAbs in DFGClobberize, their PureValues did not include their
respective ArithMode. That means that e.g. a CheckOverflow ArithNegate/Abs could be considered equivalent
to an Unchecked version of the same node.

Thanks to Samuel Groß of Google Project Zero for identifying this bug.

* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):

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

2 months agoUnreviewed, reverting r258446.
lawrence.j@apple.com [Sat, 14 Mar 2020 00:05:31 +0000 (00:05 +0000)]
Unreviewed, reverting r258446.

These expectations are no longer needed.

Reverted changeset:

"[ Mac ] http/tests/security/mixedContent/insecure-worker-
global-scope.html is flaky failing."
https://bugs.webkit.org/show_bug.cgi?id=209093
https://trac.webkit.org/changeset/258446

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

2 months agoUnreviewed, reverting r258431.
lawrence.j@apple.com [Fri, 13 Mar 2020 23:59:20 +0000 (23:59 +0000)]
Unreviewed, reverting r258431.

These tests are flaky failing.

Reverted changeset:

"Add mixed content block test for imported scripts in worker
global scope"
https://bugs.webkit.org/show_bug.cgi?id=209075
https://trac.webkit.org/changeset/258431

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

2 months agoUnreviewed, drop unused variable in WebPageProxy::backForwardGoToItem().
cdumez@apple.com [Fri, 13 Mar 2020 23:57:20 +0000 (23:57 +0000)]
Unreviewed, drop unused variable in WebPageProxy::backForwardGoToItem().

* UIProcess/WebPageProxy.cpp:

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

2 months agoRemove unused code related to removePrevalentDomains()
wilander@apple.com [Fri, 13 Mar 2020 23:35:40 +0000 (23:35 +0000)]
Remove unused code related to removePrevalentDomains()
https://bugs.webkit.org/show_bug.cgi?id=209078
<rdar://problem/59681984>

Reviewed by Brent Fulgham.

The various removePrevalentDomains() functions and its IPC endpoint are unused and should be removed.

Source/WebCore:

No new tests. Just dead code removal.

* platform/network/NetworkStorageSession.cpp:
(WebCore::NetworkStorageSession::removePrevalentDomains): Deleted.
* platform/network/NetworkStorageSession.h:

Source/WebKit:

* NetworkProcess/Classifier/ResourceLoadStatisticsStore.cpp:
(WebKit::ResourceLoadStatisticsStore::clearBlockingStateForDomains): Deleted.
* NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::removePrevalentDomains): Deleted.
(WebKit::WebResourceLoadStatisticsStore::callRemoveDomainsHandler): Deleted.
* NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
* NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::removePrevalentDomains): Deleted.
* NetworkProcess/NetworkProcess.h:
* NetworkProcess/NetworkProcess.messages.in:

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

2 months ago[Cocoa] Push applicationSDKVersion() down from WebCore into WTF
mmaxfield@apple.com [Fri, 13 Mar 2020 23:33:33 +0000 (23:33 +0000)]
[Cocoa] Push applicationSDKVersion() down from WebCore into WTF
https://bugs.webkit.org/show_bug.cgi?id=209030

Reviewed by Simon Fraser.

Source/JavaScriptCore:

dyld_get_program_sdk_version() gives you the wrong answer in the Web Process (or at least
not the answer you actually want). There are already facilities for the UI Process to tell
the Web Process what the real value is, but those functions are currently in WebCore,
which is inaccessible to WTF. This patch is in preparation for
https://bugs.webkit.org/show_bug.cgi?id=208969 which needs to know this information in WTF.

I also found a few places which were calling dyld_get_program_sdk_version() in JavaScriptCore
and WebCore (which is wrong because those libraries exist in the Web Process), and have fixed
them up to use applicationSDKVersion() instead.

* API/JSWrapperMap.mm:
(supportsInitMethodConstructors):

Source/WebCore:

* html/HTMLObjectElement.cpp:
* html/MediaElementSession.cpp:
(WebCore::MediaElementSession::requiresFullscreenForVideoPlayback const):
* loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequest):
* platform/RuntimeApplicationChecks.h:
* platform/Timer.cpp:
(WebCore::shouldSuppressThreadSafetyCheck):
* platform/cocoa/RuntimeApplicationChecksCocoa.mm:
(WebCore::applicationSDKVersionOverride): Deleted.
(WebCore::setApplicationSDKVersion): Deleted.
(WebCore::applicationSDKVersion): Deleted.

Source/WebKit:

* NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
* Shared/WebPreferencesDefaultValues.cpp:
(WebKit::defaultCSSOMViewScrollingAPIEnabled):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeWebProcess):

Source/WTF:

* WTF.xcodeproj/project.pbxproj:
* wtf/PlatformMac.cmake:
* wtf/cocoa/RuntimeApplicationChecksCocoa.cpp: Added.
* wtf/cocoa/RuntimeApplicationChecksCocoa.h: Added.
(WTF::applicationSDKVersionOverride):
(WTF::setApplicationSDKVersion):
(WTF::applicationSDKVersion):

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

2 months ago[ Mac ] http/tests/security/mixedContent/insecure-worker-global-scope.html is flaky...
lawrence.j@apple.com [Fri, 13 Mar 2020 23:33:23 +0000 (23:33 +0000)]
[ Mac ] http/tests/security/mixedContent/insecure-worker-global-scope.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209093

Unreviewed test gardening.

* platform/mac/TestExpectations:

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

2 months agoRemove unused IPC function UserMediaCaptureManagerProxy::SetMuted
bfulgham@apple.com [Fri, 13 Mar 2020 23:29:08 +0000 (23:29 +0000)]
Remove unused IPC function UserMediaCaptureManagerProxy::SetMuted
https://bugs.webkit.org/show_bug.cgi?id=209087
<rdar://problem/59658963>

Reviewed by Eric Carlson.

Remove the unused UserMediaCaptureManagerProxy message 'SetMuted'.

* UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(WebKit::UserMediaCaptureManagerProxy::setMuted): Deleted.
* UIProcess/Cocoa/UserMediaCaptureManagerProxy.h:
* UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in:

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

2 months agoRemove unused GetNetworkLoadInformationRequest call
bfulgham@apple.com [Fri, 13 Mar 2020 23:21:28 +0000 (23:21 +0000)]
Remove unused GetNetworkLoadInformationRequest call
https://bugs.webkit.org/show_bug.cgi?id=209081
<rdar://problem/59659064>

Reviewed by Geoffrey Garen.

Remove dead code associated with an unused IPC message.

* NetworkProcess/NetworkConnectionToWebProcess.h:
(WebKit::NetworkConnectionToWebProcess::getNetworkLoadInformationRequest): Deleted.
* NetworkProcess/NetworkConnectionToWebProcess.messages.in:

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

2 months ago[JSC] Reload CodeBlock or suppress GC while setting up calls
ysuzuki@apple.com [Fri, 13 Mar 2020 23:20:45 +0000 (23:20 +0000)]
[JSC] Reload CodeBlock or suppress GC while setting up calls
https://bugs.webkit.org/show_bug.cgi?id=209033
<rdar://problem/58946936>

Reviewed by Saam Barati.

The sequence of Interpreter::execute is the following.

    1. Getting CodeBlock from Executable
    2. Doing a lot of setups
    3. Setting (1)'s CodeBlock to ProtoFrame
    4. Calling code through Executable

During (2), it would be possible that GC happens and it replaces CodeBlock in Executable.
Then, when executing JITCode with CodeBlock in (4), we use new JITCode with old CodeBlock.

In this patch,

For ProgramExecutable, FunctionExecutable, ModuleProgramExecutable, we ensure that no GC happens
after getting CodeBlock by placing DisallowGC. For EvalExecutable, we reload CodeBlock after setting
up environment. It is possible that FunctionExecutable* stored in CodeBlock can be different when
executing a new CodeBlock, but this is OK since this different does not appear and we do not rely on
this: we are touching `name` of FunctionExecutable* which is retrieved from CodeBlock. But this name
will not be changed since this is derived from UnlinkedFunctionExecutable which is shared by multiple
CodeBlocks. And FunctionExecutable* generation ordering must be the same for every CodeBlock generation
from the same UnlinkedCodeBlock.

* bytecode/CodeBlock.h:
(JSC::ScriptExecutable::prepareForExecution):
* interpreter/Interpreter.cpp:
(JSC::Interpreter::executeProgram):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::execute):
(JSC::Interpreter::executeModuleProgram):
* interpreter/InterpreterInlines.h:
(JSC::Interpreter::execute):
* runtime/DisallowScope.h:
(JSC::DisallowScope::disable):
* runtime/StringPrototype.cpp:

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

2 months ago[WebAuthn] Customize a bit more on the macOS LocalAuthentication prompt
jiewen_tan@apple.com [Fri, 13 Mar 2020 23:15:31 +0000 (23:15 +0000)]
[WebAuthn] Customize a bit more on the macOS LocalAuthentication prompt
https://bugs.webkit.org/show_bug.cgi?id=208703
<rdar://problem/60136974>

Reviewed by Darin Adler.

Source/WebCore:

* en.lproj/Localizable.strings:
* platform/LocalizedStrings.cpp:
(WebCore::touchIDPromptTitle):
* platform/LocalizedStrings.h:
Adds a new formatted UI string to help with RP ID.

Source/WebKit:

On macOS, LocalAuthentication prompt can be shown anywhere that is probably not on top of
our UI clients. Therefore, add a RP ID to the dialog to help users to identify what has
happened. In addition, it removes the password fallback button.

* Platform/spi/Cocoa/LocalAuthenticationSPI.h:
* UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:
(WebKit::LocalAuthenticator::continueMakeCredentialAfterDecidePolicy):
(WebKit::LocalAuthenticator::continueGetAssertionAfterResponseSelected):
* UIProcess/WebAuthentication/Cocoa/LocalConnection.h:
* UIProcess/WebAuthentication/Cocoa/LocalConnection.mm:
(WebKit::LocalConnection::verifyUser const):
* UIProcess/WebAuthentication/Mock/MockLocalConnection.h:
* UIProcess/WebAuthentication/Mock/MockLocalConnection.mm:
(WebKit::MockLocalConnection::verifyUser const):

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

2 months agoRemove Unused IPC message PlaybackSessionManagerProxy::PictureInPictureActiveChanged
bfulgham@apple.com [Fri, 13 Mar 2020 23:04:17 +0000 (23:04 +0000)]
Remove Unused IPC message PlaybackSessionManagerProxy::PictureInPictureActiveChanged
https://bugs.webkit.org/show_bug.cgi?id=209085
<rdar://problem/59658916>

Reviewed by Geoffrey Garen.

Remove the unused PlaybackSessionManagerProxy message 'PictureInPictureActiveChanged'.

* UIProcess/Cocoa/PlaybackSessionManagerProxy.h:
* UIProcess/Cocoa/PlaybackSessionManagerProxy.messages.in:
* UIProcess/Cocoa/PlaybackSessionManagerProxy.mm:
(WebKit::PlaybackSessionManagerProxy::pictureInPictureActiveChanged): Deleted.

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

2 months agoREGRESSION: (r256232) [ Mac wk1 Release ] resize-observer/delete-observers-in-callbac...
cdumez@apple.com [Fri, 13 Mar 2020 22:35:09 +0000 (22:35 +0000)]
REGRESSION: (r256232) [ Mac wk1 Release ] resize-observer/delete-observers-in-callbacks.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=207847
<rdar://problem/59516099>

Unreviewed, unskip test now that is should no longer be flaky after r258438.

* platform/mac-wk1/TestExpectations:

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

2 months agoREGRESSION (257844): fast/scrolling/scroll-container-horizontally.html is timing out
jacob_uphoff@apple.com [Fri, 13 Mar 2020 22:33:29 +0000 (22:33 +0000)]
REGRESSION (257844): fast/scrolling/scroll-container-horizontally.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=209083

Also changed expectations for a test that is now timing out.

Unreviewwd test gardening.

* platform/ios-simulator-wk2/TestExpectations:
* platform/ios-wk2/TestExpectations:

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

2 months agoUnreviewed, reverting r256232.
cdumez@apple.com [Fri, 13 Mar 2020 22:32:28 +0000 (22:32 +0000)]
Unreviewed, reverting r256232.

Caused ResizeObserver tests to become flaky

Reverted changeset:

"[DRT] InternalSettingsGenerated::resetToConsistentState() may
override TestOptions"
https://bugs.webkit.org/show_bug.cgi?id=207481
https://trac.webkit.org/changeset/256232

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

2 months ago[ Mac Release ] css3/selectors3/xml/css3-modsel-d4.xml is flaky failing.
lawrence.j@apple.com [Fri, 13 Mar 2020 22:18:04 +0000 (22:18 +0000)]
[ Mac Release ] css3/selectors3/xml/css3-modsel-d4.xml is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209084

Unreviewed test gardening.

* platform/mac/TestExpectations:

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

2 months ago[ iOS and Mac wk2 ] http/tests/in-app-browser-privacy/ tests failing
katherine_cheney@apple.com [Fri, 13 Mar 2020 21:56:56 +0000 (21:56 +0000)]
[ iOS and Mac wk2 ] http/tests/in-app-browser-privacy/ tests failing
https://bugs.webkit.org/show_bug.cgi?id=209016
<rdar://problem/60329530>

Reviewed by Chris Dumez.

Source/WebKit:

This patch adds a function to re-initialize app bound domains for
in-app-browser-privacy tests, since they are only initialized once
when the WebsiteDataStore is created. This causes issues if the tests
are run in parallel with other tests with different app-bound domains.

* UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreReinitializeAppBoundDomains):
* UIProcess/API/C/WKWebsiteDataStoreRef.h:
* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::clearAppBoundDomains):
(WebKit::WebsiteDataStore::reinitializeAppBoundDomains):
* UIProcess/WebsiteData/WebsiteDataStore.h:

Tools:

Re-initialize the app-bound domains when the correct
TestOptions parameter is set.

* WebKitTestRunner/TestController.cpp:
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::reinitializeAppBoundDomains):
* WebKitTestRunner/TestController.h:

LayoutTests:

Use TestOptions to trigger the re-initialization of app-bound domains.

* http/tests/in-app-browser-privacy/app-bound-domain.html:
* http/tests/in-app-browser-privacy/switch-session-on-navigation-to-app-bound-domain.html:

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

2 months ago[ Mac ] fast/animation/request-animation-frame-timestamps.html is flaky failing.
lawrence.j@apple.com [Fri, 13 Mar 2020 21:51:21 +0000 (21:51 +0000)]
[ Mac ] fast/animation/request-animation-frame-timestamps.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209079

Unreviewed test gardening.

* platform/mac/TestExpectations:

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

2 months agoSafari sometimes crashes when switch video into PiP mode
peng.liu6@apple.com [Fri, 13 Mar 2020 21:49:31 +0000 (21:49 +0000)]
Safari sometimes crashes when switch video into PiP mode
https://bugs.webkit.org/show_bug.cgi?id=208904

Reviewed by Simon Fraser.

With this patch, MediaControlTextTrackContainerElement won't paint its subtree
to an image buffer (for the captions in video fullscreen or picture-in-picture mode)
when the cues are updated. Instead, it only sets the flag m_needsGenerateTextTrackRepresentation
to true after running layout based on the new cues. After that, it paints its subtree
to an image buffer if needed at the end of Page::updateRendering() when the layout is clean.
TextTrackRepresentationCocoa will use the image buffer to set the content of the layer
for captions in video fullscreen or picture-in-picture mode.

MediaControlTextTrackContainerElement class is responsible for rendering the captions in both:
1) a video player in the inline mode.
2) a video player in "video fullscreen" or picture-in-picture mode.
This patch refactors some functions to make their responsibilities clear.

* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::updateTextTrackRepresentationImageIfNeeded):
* Modules/mediacontrols/MediaControlsHost.h:
* dom/Document.cpp:
(WebCore::Document::setMediaElementShowingTextTrack):
(WebCore::Document::clearMediaElementShowingTextTrack):
(WebCore::Document::updateTextTrackRepresentationImageIfNeeded):
* dom/Document.h:

Functions textTracksAreReady(), textTrackReadyStateChanged() and configureTextTrackDisplay()
should be wrapped with "#if ENABLE(VIDEO_TRACK)".
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::setTextTrackRepresentation):
(WebCore::HTMLMediaElement::textTracksAreReady const):
(WebCore::HTMLMediaElement::textTrackReadyStateChanged):
(WebCore::HTMLMediaElement::configureTextTrackDisplay):
(WebCore::HTMLMediaElement::updateTextTrackRepresentationImageIfNeeded):
* html/HTMLMediaElement.h:

* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::createElementRenderer):
(WebCore::MediaControlTextTrackContainerElement::updateDisplay):
(WebCore::MediaControlTextTrackContainerElement::updateTextTrackRepresentationImageIfNeeded):
(WebCore::MediaControlTextTrackContainerElement::updateTextTrackRepresentationIfNeeded):
(WebCore::MediaControlTextTrackContainerElement::clearTextTrackRepresentation):
(WebCore::MediaControlTextTrackContainerElement::updateTextTrackStyle):
(WebCore::MediaControlTextTrackContainerElement::enteredFullscreen):
(WebCore::MediaControlTextTrackContainerElement::updateVideoDisplaySize):
(WebCore::MediaControlTextTrackContainerElement::updateSizes):
(WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
(WebCore::MediaControlTextTrackContainerElement::textTrackRepresentationBoundsChanged):
(WebCore::MediaControlTextTrackContainerElement::updateTextTrackRepresentation): Deleted.
(WebCore::MediaControlTextTrackContainerElement::updateTextTrackRepresentationStyle): Deleted.
(WebCore::MediaControlTextTrackContainerElement::layoutIfNecessary): Deleted.
(WebCore::MediaControlTextTrackContainerElement::updateCueStyles): Deleted.
* html/shadow/MediaControlElements.h:
* html/shadow/MediaControls.cpp:
(WebCore::MediaControls::updateTextTrackRepresentationImageIfNeeded):
* html/shadow/MediaControls.h:
* page/Page.cpp:
(WebCore::Page::updateRendering):
* rendering/RenderMediaControlElements.cpp:
(WebCore::RenderMediaControlTextTrackContainer::RenderMediaControlTextTrackContainer):
(WebCore::RenderMediaControlTextTrackContainer::layout):
(WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement): Deleted.
(WebCore::RenderTextTrackContainerElement::layout): Deleted.
* rendering/RenderMediaControlElements.h:

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

2 months agoREGRESSION: [ Mac wk2 ] svg/custom/object-sizing-explicit-width.xhtml is flaky failing
tsavell@apple.com [Fri, 13 Mar 2020 21:39:19 +0000 (21:39 +0000)]
REGRESSION: [ Mac wk2 ] svg/custom/object-sizing-explicit-width.xhtml is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=209077

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

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

2 months agoAdd mixed content block test for imported scripts in worker global scope
wilander@apple.com [Fri, 13 Mar 2020 21:32:45 +0000 (21:32 +0000)]
Add mixed content block test for imported scripts in worker global scope
https://bugs.webkit.org/show_bug.cgi?id=209075
<rdar://problem/27483005>

Reviewed by Brent Fulgham.

* http/tests/security/mixedContent/insecure-worker-global-scope-expected.txt: Added.
* http/tests/security/mixedContent/insecure-worker-global-scope.html: Added.
* http/tests/security/mixedContent/resources/worker-importing-insecure-script.js: Added.
* http/tests/security/mixedContent/resources/worker-importing-secure-script.js: Added.
* http/tests/security/mixedContent/resources/worker-sending-message.js: Added.
* platform/mac-wk1/TestExpectations:
    Test for some reason fails on Mojave Debug WK1 but not on Mojave Release WK1 or other bots.
    Therefore skipped.

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

2 months agoREGRESSION (r257840): [ iOS ] fast/backgrounds/hidpi-bitmap-background-on-subpixel...
jacob_uphoff@apple.com [Fri, 13 Mar 2020 20:56:26 +0000 (20:56 +0000)]
REGRESSION (r257840): [ iOS ] fast/backgrounds/hidpi-bitmap-background-on-subpixel-position.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=208601

Fixing test expectations.

Unreviewed test gardening.

* platform/ios-wk2/TestExpectations:

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

2 months ago[JSC] Delete IC creation should check mayNeedToCheckCell/canCacheDeleteIC regardless...
ysuzuki@apple.com [Fri, 13 Mar 2020 20:37:09 +0000 (20:37 +0000)]
[JSC] Delete IC creation should check mayNeedToCheckCell/canCacheDeleteIC regardless of Structure::outOfLineCapacity
https://bugs.webkit.org/show_bug.cgi?id=209027

Reviewed by Saam Barati.

Delete IC code generation assumes that mayNeedToCheckCell (it is replaced with canCacheDeleteIC) is false
while we are looking into this status only if Structure::outOfLineCapacity meets a certain condition. We should avoid
create Delete IC when mayNeedToCheckCell/canCacheDeleteIC is true regardless of Structure::outOfLineCapacity

* bytecode/AccessCase.cpp:
(JSC::AccessCase::createDelete):
(JSC::AccessCase::generateImpl):
* runtime/Structure.h:
* runtime/StructureInlines.h:
(JSC::Structure::mayHaveIndexingHeader const):
(JSC::Structure::canCacheDeleteIC const):

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

2 months agoUnreviewed, reverting r258391.
ryanhaddad@apple.com [Fri, 13 Mar 2020 20:22:17 +0000 (20:22 +0000)]
Unreviewed, reverting r258391.

Breaks internal builds.

Reverted changeset:

"Apply rotation at source level if WebRTC sink ask so"
https://bugs.webkit.org/show_bug.cgi?id=205645
https://trac.webkit.org/changeset/258391

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

2 months ago[Mac wk2 ] fast/dom/attr_dead_doc.html is flaky failing.
cdumez@apple.com [Fri, 13 Mar 2020 20:19:16 +0000 (20:19 +0000)]
[Mac wk2 ] fast/dom/attr_dead_doc.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=207668
<rdar://problem/59404606>

Reviewed by Geoffrey Garen.

The test was doing a navigation to about:blank and relying on a 100ms timer to update the src
attribute of the img element. We now remove the frame from the document instead since it
detaches the document synchronously. It gets rid of the 100ms timer and replaces it with a
0 timer which will reliably give the same output.

* fast/dom/attr_dead_doc-expected.txt:
* fast/dom/attr_dead_doc.html:
* platform/mac-wk2/TestExpectations:

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

2 months ago[ Mac wk1 Debug] inspector/injected-script/avoid-getter-invocation.html is flaky...
lawrence.j@apple.com [Fri, 13 Mar 2020 20:07:20 +0000 (20:07 +0000)]
[ Mac wk1 Debug] inspector/injected-script/avoid-getter-invocation.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209073

Unreviewed test gardening.

* platform/mac-wk1/TestExpectations:

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

2 months agoReport all third party loads on a per-page basis
katherine_cheney@apple.com [Fri, 13 Mar 2020 19:43:43 +0000 (19:43 +0000)]
Report all third party loads on a per-page basis
https://bugs.webkit.org/show_bug.cgi?id=209032
<rdar://problem/60397323>

Reviewed by Chris Dumez.

Source/WebCore:

Test: http/tests/resourceLoadStatistics/loaded-registrable-domains-get-reported.html

Rename this function to more accurately reflect its purpose of sending
loaded registrable domains to the WebPage.

* Modules/websockets/WebSocket.cpp:
(WebCore::WebSocket::connect):
* loader/FrameLoaderClient.h:
* loader/ResourceLoader.cpp:
(WebCore::ResourceLoader::willSendRequestInternal):
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestResource):

Source/WebKit:

Test: http/tests/resourceLoadStatistics/loaded-registrable-domains-get-reported.html

Removed IPC to the Network Process asking if a resource load is from
a prevalent domain. This now stores and sends all loaded registrable
domains. This patch is mostly updating naming to reflect this and
deleting the unnecessary code to communicate with the
ResourceLoadStatisticsStore.

* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::requestStorageAccessUnderOpener):
(WebKit::NetworkConnectionToWebProcess::isPrevalentSubresourceLoad): Deleted.
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkConnectionToWebProcess.messages.in:
* UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _loadedThirdPartyDomainsFor:completionHandler:]):
(-[WKWebsiteDataStore _clearLoadedThirdPartyDomainsFor:]):
(-[WKWebsiteDataStore _getPrevalentDomainsFor:completionHandler:]): Deleted.
(-[WKWebsiteDataStore _clearPrevalentDomainsFor:]): Deleted.
* UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
* UIProcess/WebPageProxy.cpp:
* UIProcess/WebPageProxy.h:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::didLoadFromRegistrableDomain):
(WebKit::WebFrameLoaderClient::addLoadedRegistrableDomain): Deleted.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::didCommitLoad):
(WebKit::WebPage::didLoadFromRegistrableDomain):
Add a check that this is a third party by comparing the target domain
to the main frame domain.

(WebKit::WebPage::loadedThirdPartyDomains):
(WebKit::WebPage::clearLoadedThirdPartyDomains):
(WebKit::WebPage::addLoadedRegistrableDomain): Deleted.
(WebKit::WebPage::getPrevalentDomains): Deleted.
(WebKit::WebPage::clearPrevalentDomains): Deleted.
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:

Tools:

Mostly naming updates to reflect the change in use for this SPI call.
It now returns all loaded third party domains, not just prevalent ones.

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::getLoadedThirdPartyDomains):
(WTR::TestRunner::callDidReceiveLoadedThirdPartyDomainsCallback):
(WTR::TestRunner::getPrevalentDomains): Deleted.
(WTR::TestRunner::callDidReceivePrevalentDomainsCallback): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::getLoadedThirdPartyDomains):
(WTR::TestController::clearLoadedThirdPartyDomains):
(WTR::TestController::getPrevalentDomains): Deleted.
(WTR::TestController::clearPrevalentDomains): Deleted.
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
(WTR::TestInvocation::didReceiveLoadedThirdPartyDomains):
(WTR::TestInvocation::didReceivePrevalentDomains): Deleted.
* WebKitTestRunner/TestInvocation.h:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::getLoadedThirdPartyDomains):
(WTR::TestController::clearLoadedThirdPartyDomains):
(WTR::TestController::getPrevalentDomains): Deleted.
(WTR::TestController::clearPrevalentDomains): Deleted.

LayoutTests:

Now that we report all loaded third party domains, we no longer need
ITP to test this call. We can eliminate the dual testing for
memory/database setup and any logic related to setting a resource
as prevalent.

* http/tests/resourceLoadStatistics/loaded-registrable-domains-get-reported-expected.txt: Copied from LayoutTests/http/tests/websocket/web-socket-loads-captured-in-per-page-domains-expected.txt.
* http/tests/resourceLoadStatistics/loaded-registrable-domains-get-reported.html: Added.
* http/tests/resourceLoadStatistics/prevalent-domains-per-page-database-expected.txt: Removed.
* http/tests/resourceLoadStatistics/prevalent-domains-per-page-database.html: Removed.
* http/tests/resourceLoadStatistics/prevalent-domains-per-page.html: Removed.
* http/tests/websocket/web-socket-loads-captured-in-per-page-domains-expected.txt:
* http/tests/websocket/web-socket-loads-captured-in-per-page-domains.html:
* platform/ios/TestExpectations:
Since this test no longer uses UIHelper.activateAt, it can be
unskipped in iOS

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

2 months ago[ews] run FindModifiedChangeLogs early in the build
aakash_jain@apple.com [Fri, 13 Mar 2020 19:33:39 +0000 (19:33 +0000)]
[ews] run FindModifiedChangeLogs early in the build
https://bugs.webkit.org/show_bug.cgi?id=209060

Reviewed by Jonathan Bedard.

* BuildSlaveSupport/ews-build/factories.py:
* BuildSlaveSupport/ews-build/factories_unittest.py: Updated unit-test.

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

2 months agoskip wasm/function-tests/grow-memory-cause-gc.js on memory limited devices
sbarati@apple.com [Fri, 13 Mar 2020 19:19:28 +0000 (19:19 +0000)]
skip wasm/function-tests/grow-memory-cause-gc.js on memory limited devices
https://bugs.webkit.org/show_bug.cgi?id=209069
<rdar://problem/59954558>

Reviewed by Yusuke Suzuki.

* wasm/function-tests/grow-memory-cause-gc.js:

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

2 months ago[GTK] Add EWS testers to run GTK layout tests
dpino@igalia.com [Fri, 13 Mar 2020 19:07:50 +0000 (19:07 +0000)]
[GTK] Add EWS testers to run GTK layout tests
https://bugs.webkit.org/show_bug.cgi?id=207648

Reviewed by Carlos Alberto Lopez Perez and Aakash Jain.

Queue 'GTK-Webkit2-EWS' was renamed to 'GTK-Build-EWS'.
A new queue, named 'GTK-WK2-Tests-EWS', was added for WK2
tests (layout tests).

* BuildSlaveSupport/ews-build/config.json: Added new queue for
WK2 tests.
* BuildSlaveSupport/ews-build/factories.py:
(GTKTestsFactory):
* BuildSlaveSupport/ews-build/factories_unittest.py:
(TestCommitQueueFactory.test_commit_queue_factory):
(TestGTKFactory): Added unit-test.
(TestGTKFactory.test_gtk_factory):
* BuildSlaveSupport/ews-build/loadConfig.py:
* BuildSlaveSupport/ews-build/loadConfig_unittest.py:
(TagsForBuilderTest.test_getTagsForBuilder):

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

2 months ago[ Mac Debug ] http/tests/css/shared-stylesheet-mutation-preconstruct.html is flaky...
lawrence.j@apple.com [Fri, 13 Mar 2020 18:57:43 +0000 (18:57 +0000)]
[ Mac Debug ] http/tests/css/shared-stylesheet-mutation-preconstruct.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209072

Unreviewed test gardening.

* platform/mac/TestExpectations:

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

2 months agoRemove AffectedByDrag style flag
antti@apple.com [Fri, 13 Mar 2020 18:55:54 +0000 (18:55 +0000)]
Remove AffectedByDrag style flag
https://bugs.webkit.org/show_bug.cgi?id=209054

Reviewed by Simon Fraser.

As a followup to r258321, remove the last remaining user action related AffectedBy flag.

This also cleans out a bunch of scetchy, risky code from render tree (style invalidation!).

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* dom/DataTransfer.cpp:
(WebCore::DataTransfer::createDragImage const):
* dom/Element.cpp:
(WebCore::Element::isUserActionElementDragged const):
(WebCore::Element::setBeingDragged):

Move dragged state for render tree to Element where it belongs.

(WebCore::Element::hasFlagsSetDuringStylingOfChildren const):
* dom/Element.h:
(WebCore::Element::isBeingDragged const):
(WebCore::Element::descendantsAffectedByPreviousSibling const):
(WebCore::Element::setDescendantsAffectedByPreviousSibling):
(WebCore::Element::childrenAffectedByDrag const): Deleted.
(WebCore::Element::setChildrenAffectedByDrag): Deleted.
* dom/Node.h:
* dom/UserActionElementSet.h:
(WebCore::UserActionElementSet::isBeingDragged):
(WebCore::UserActionElementSet::setBeingDragged):

Invalidate using PseudoClassChangeInvalidation that doesn't require any flags.

* platform/DragImage.cpp:
(WebCore::ScopedNodeDragEnabler::ScopedNodeDragEnabler):
(WebCore::ScopedNodeDragEnabler::~ScopedNodeDragEnabler):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateDragState): Deleted.
* rendering/RenderBlock.h:
* rendering/RenderInline.cpp:
(WebCore::RenderInline::updateDragState): Deleted.
* rendering/RenderInline.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::updateDragState): Deleted.
(WebCore::RenderObject::setIsDragging): Deleted.
* rendering/RenderObject.h:
(WebCore::RenderObject::RenderObjectRareData::RenderObjectRareData):
(WebCore::RenderObject::isDragging const): Deleted.
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::RenderStyle):
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::NonInheritedFlags::operator== const):
(WebCore::RenderStyle::affectedByDrag const): Deleted.
(WebCore::RenderStyle::setAffectedByDrag): Deleted.
* style/StyleRelations.cpp:
(WebCore::Style::commitRelationsToRenderStyle):
(WebCore::Style::commitRelations):
* style/StyleRelations.h:

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

2 months agoAdd API endpoint in EWS django app to provide patch status in json format
aakash_jain@apple.com [Fri, 13 Mar 2020 18:52:01 +0000 (18:52 +0000)]
Add API endpoint in EWS django app to provide patch status in json format
https://bugs.webkit.org/show_bug.cgi?id=208940

Reviewed by Jonathan Bedard.

* BuildSlaveSupport/ews-app/ews/urls.py: Added url for new api endpoint.
* BuildSlaveSupport/ews-app/ews/views/status.py: Added.

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

2 months agoWebKit2UseRemoteLayerTreeDrawingArea should be reset to NO between layout tests
katherine_cheney@apple.com [Fri, 13 Mar 2020 18:36:10 +0000 (18:36 +0000)]
WebKit2UseRemoteLayerTreeDrawingArea should be reset to NO between layout tests
https://bugs.webkit.org/show_bug.cgi?id=209055
<rdar://problem/60272692>

Reviewed by Simon Fraser.

Now that WebKitTestRunner has a bundleID, its' user default values
persist between tests. This patch resets WebKit2UseRemoteLayerTreeDrawingArea
to NO before running tests. It will be set to YES in PlatformWebView
if specified by the test.

* WebKitTestRunner/mac/main.mm:
(setDefaultsToConsistentValuesForTesting):

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

2 months ago[ Mac wk1 ] http/tests/security/javascriptURL/xss-DENIED-to-javascript-url-in-foreign...
lawrence.j@apple.com [Fri, 13 Mar 2020 18:24:39 +0000 (18:24 +0000)]
[ Mac wk1 ] http/tests/security/javascriptURL/xss-DENIED-to-javascript-url-in-foreign-domain-subframe.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209067

Unreviewed test gardening.

* platform/mac-wk1/TestExpectations:

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

2 months ago[CMake] Eleminate mismatches between Find* module names and variables they set
annulen@yandex.ru [Fri, 13 Mar 2020 18:10:58 +0000 (18:10 +0000)]
[CMake] Eleminate mismatches between Find* module names and variables they set
https://bugs.webkit.org/show_bug.cgi?id=208948

Reviewed by Michael Catanzaro.

.:

* Source/cmake/FindLibseccomp.cmake:
* Source/cmake/FindWPEBackend_fdo.cmake: Renamed from Source/cmake/FindWPEBackend-fdo.cmake.
* Source/cmake/OptionsGTK.cmake:
* Source/cmake/OptionsWPE.cmake:

Source/ThirdParty/libwebrtc:

* CMakeLists.txt:
* cmake/FindAlsaLib.cmake:
* cmake/FindLibEvent.cmake:
* cmake/FindLibOpus.cmake: Renamed from Source/ThirdParty/libwebrtc/cmake/FindOpus.cmake.
* cmake/FindLibVpx.cmake: Renamed from Source/ThirdParty/libwebrtc/cmake/FindVpx.cmake.

Tools:

* wpe/backends/CMakeLists.txt:

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

2 months ago[iOS] 9 imported/w3c/web-platform-tests/pointerevents/pointerevent tests are failing...
graouts@webkit.org [Fri, 13 Mar 2020 17:56:28 +0000 (17:56 +0000)]
[iOS] 9 imported/w3c/web-platform-tests/pointerevents/pointerevent tests are failing since import in r253630
https://bugs.webkit.org/show_bug.cgi?id=209064
<rdar://problem/60330378>

Reviewed by Simon Fraser.

In r253630 we imported a host of new and updated WPT tests and these included changes to testdriver.js that our testdriver-vendor.js
implementation didn't know to handle. Specifically, pauses are now added after each pointer action to add a 16ms delay.

It was a mistake to use a stationary touch for pauses, instead we shuld just increase the time offset with the value set in the pause
and avoid changing any other state, so no resetting the last known x and y values, or adding a new touch into the event stream that
will be passed to UIScriptController.

And since there is now a built-in pause between pointer actions, there is also no need to set a harcoded value for a default
timeoffset, this is now provided directly by the action input.

* web-platform-tests/resources/testdriver-vendor.js:

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

2 months agoBound functions should pass correct NewTarget value
shvaikalesh@gmail.com [Fri, 13 Mar 2020 17:51:50 +0000 (17:51 +0000)]
Bound functions should pass correct NewTarget value
https://bugs.webkit.org/show_bug.cgi?id=209057

Reviewed by Keith Miller.

JSTests:

* test262/expectations.yaml: Mark 4 test cases as passing.

Source/JavaScriptCore:

This change implements steps 5-6 of bound function's [[Construct]] method [1],
fixing bound function subclasses and aligning JSC with V8 and SpiderMonkey.

[1]: https://tc39.es/ecma262/#sec-bound-function-exotic-objects-construct-argumentslist-newtarget

* runtime/JSBoundFunction.cpp:
(JSC::boundThisNoArgsFunctionConstruct):
(JSC::boundFunctionConstruct):

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

2 months ago[ews-app] reduce logging
aakash_jain@apple.com [Fri, 13 Mar 2020 17:40:11 +0000 (17:40 +0000)]
[ews-app] reduce logging
https://bugs.webkit.org/show_bug.cgi?id=209062

Reviewed by Jonathan Bedard.

* BuildSlaveSupport/ews-app/ews/common/bugzilla.py:
(BugzillaBeautifulSoup.authenticate):
(BugzillaBeautifulSoup._load_query):

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

2 months ago[iOS WK2] Some pointerevents tests time out
simon.fraser@apple.com [Fri, 13 Mar 2020 17:16:35 +0000 (17:16 +0000)]
[iOS WK2] Some pointerevents tests time out
https://bugs.webkit.org/show_bug.cgi?id=209026
<rdar://problem/60338691>

Reviewed by Wenson Hsieh.

Pointerevents tests that used ui.* functions threw errors in the UI-side script because ui._run() bungled
the callbacks. Fix ui._run() to take two arguments, the command name and all arguments except the callback,
which it adds.

The tests are skipped in Open Source because most of them require touch events.

* pointerevents/utils.js:
(const.ui.new.UIController.prototype.swipe):
(const.ui.new.UIController.prototype.tap):
(const.ui.new.UIController.prototype.doubleTap):
(const.ui.new.UIController.prototype.doubleTapToZoom):
(const.ui.new.UIController.prototype.tapStylus):
(const.ui.new.UIController.prototype._runEvents):
(const.ui.new.UIController.prototype._run):
(const.ui.new.UIController):
(const.ui.new.UIController.prototype._run.): Deleted.
(const.ui.new.UIController.prototype._run.return.new.Promise): Deleted.

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

2 months ago[ macOS ] fast/frames/sandboxed-iframe-navigation-allowed.html is flaky failing
cdumez@apple.com [Fri, 13 Mar 2020 17:14:59 +0000 (17:14 +0000)]
[ macOS ] fast/frames/sandboxed-iframe-navigation-allowed.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=206680
<rdar://problem/58840416>

Reviewed by Sam Weinig.

Make sure both iframes have finished loading before running the test. Previously, it was waiting for one of the
iframes to be loaded before doing the checks on both iframes. In some cases, the second iframe would not have
finished loading yet.

* fast/frames/sandboxed-iframe-navigation-allowed.html:

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

2 months agoRemove unused SmartMagnificationController Magnify message
bfulgham@apple.com [Fri, 13 Mar 2020 16:50:02 +0000 (16:50 +0000)]
Remove unused SmartMagnificationController Magnify message
https://bugs.webkit.org/show_bug.cgi?id=209036
<rdar://problem/59678060>

Reviewed by Tim Horton.

Remove the unused Magnify message from the SmartMagnificationController, since this is dead code.

* UIProcess/ios/SmartMagnificationController.h:
* UIProcess/ios/SmartMagnificationController.messages.in:
* UIProcess/ios/SmartMagnificationController.mm:
(WebKit::SmartMagnificationController::magnify): Deleted.

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

2 months ago[WebAccessibilityObjectWrapper renderWidgetChildren] does not need to run on main...
andresg_22@apple.com [Fri, 13 Mar 2020 16:35:54 +0000 (16:35 +0000)]
[WebAccessibilityObjectWrapper renderWidgetChildren] does not need to run on main thread.
https://bugs.webkit.org/show_bug.cgi?id=209053
<rdar://problem/60349440>

Reviewed by Chris Fleizach.

Since we are caching the platform widget in IsolatedMode (NSView),
there is no need to dispatch renderWidgetChildren to the main thread.

* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper renderWidgetChildren]):

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

2 months agoWebPageProxy::SetPromisedDataForImage should validate its `imageSize` and `archiveSiz...
ddkilzer@apple.com [Fri, 13 Mar 2020 16:22:59 +0000 (16:22 +0000)]
WebPageProxy::SetPromisedDataForImage should validate its `imageSize` and `archiveSize` parameters
<https://webkit.org/b/209029>
<rdar://problem/60181394>

Reviewed by Youenn Fablet.

* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::WebPageProxy::setPromisedDataForImage):
- Validate `imageSize` and `archiveSize` using MESSAGE_CHECK().
- Add static_cast<size_t>() to `imageSize` and `archiveSize`
  parameters to denote type change.
- Add nullptr check for SharedMemory::map() result with
  `archiveHandle`.

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

2 months ago[ macOS ] webgpu/whlsl/uint-bitwise.html is flaky crashing
jacob_uphoff@apple.com [Fri, 13 Mar 2020 16:11:34 +0000 (16:11 +0000)]
[ macOS ] webgpu/whlsl/uint-bitwise.html is flaky crashing
https://bugs.webkit.org/show_bug.cgi?id=209056

Unreviewed test gardening

* platform/mac/TestExpectations:

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

2 months agoCrash in TextIterator::node via TextManipulationController::replace
rniwa@webkit.org [Fri, 13 Mar 2020 15:20:56 +0000 (15:20 +0000)]
Crash in TextIterator::node via TextManipulationController::replace
https://bugs.webkit.org/show_bug.cgi?id=209048

Reviewed by Wenson Hsieh.

Source/WebCore:

The crash was caused by item.start being null in TextManipulationController::replace for a paragraph
consisting of just an image because TextManipulationController::observeParagraphs never may never set
startOfCurrentParagraph in such a case (content.isTextContent can be false for an image!).

Fixed the bug by setting startOfCurrentParagraph to a position before the current content's node
when inserting a token for a RenderReplaced if it's null.

Test: TextManipulation.CompleteTextManipulationShouldReplaceContentsAroundParagraphWithJustImage

* editing/TextManipulationController.cpp:
(WebCore::TextManipulationController::observeParagraphs):

Tools:

Added a regression test.

* TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TextManipulation.CompleteTextManipulationShouldReplaceContentsAroundParagraphWithJustImage):

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

2 months ago[GTK] Gardening, update TestExpectations
dpino@igalia.com [Fri, 13 Mar 2020 14:55:37 +0000 (14:55 +0000)]
[GTK] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=209047

Unreviewed gardening.

* platform/gtk/TestExpectations:

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

2 months ago[SOUP] Notify web process about WebSocket handshake request and response
carlosgc@webkit.org [Fri, 13 Mar 2020 10:37:53 +0000 (10:37 +0000)]
[SOUP] Notify web process about WebSocket handshake request and response
https://bugs.webkit.org/show_bug.cgi?id=208994

Reviewed by Youenn Fablet.

This makes WebSockets appear again in web inspector.

* NetworkProcess/soup/WebSocketTaskSoup.cpp:
(WebKit::WebSocketTask::WebSocketTask): Save the handshake message and notify the channel when the request is sent.
(WebKit::WebSocketTask::didConnect): Notify the channel that handshake response has been received.
(WebKit::WebSocketTask::didFail): Notify the channel that handshake response has been received if handshake
failed.
* NetworkProcess/soup/WebSocketTaskSoup.h:

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

2 months ago-Wredundant-move in CSSPropertyParserHelpers.cpp
commit-queue@webkit.org [Fri, 13 Mar 2020 10:31:45 +0000 (10:31 +0000)]
-Wredundant-move in CSSPropertyParserHelpers.cpp
https://bugs.webkit.org/show_bug.cgi?id=209019

Patch by Michael Catanzaro <mcatanzaro@gnome.org> on 2020-03-13
Reviewed by Youenn Fablet.

Silence compiler warning by removing improper WTFMove().

* css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::consumeDeprecatedRadialGradient):

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

2 months agoApply rotation at source level if WebRTC sink ask so
youenn@apple.com [Fri, 13 Mar 2020 10:13:11 +0000 (10:13 +0000)]
Apply rotation at source level if WebRTC sink ask so
https://bugs.webkit.org/show_bug.cgi?id=205645

Reviewed by Eric Carlson.

Source/WebCore:

Add a virtual method to RealtimeMediaSource to pass the information that the sink prefers the frames to be rotated before sending them.

Source/WebKit:

Implement RealtimeMediaSource setShouldApplyRotation by sending IPC to capture process.
In capture process, if rotation should be applied, use an ImageRotationSessionVT session to apply it before sending the video frame.
This allows WebProcess to no longer need an ImageRotationSessionVT for WebRTC.

* UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(WebKit::UserMediaCaptureManagerProxy::SourceProxy::setShouldApplyRotation):
(WebKit::UserMediaCaptureManagerProxy::SourceProxy::rotatePixelBuffer):
(WebKit::UserMediaCaptureManagerProxy::setShouldApplyRotation):
* UIProcess/Cocoa/UserMediaCaptureManagerProxy.h:
* UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in:
* WebProcess/cocoa/UserMediaCaptureManager.cpp:
(WebKit::UserMediaCaptureManager::Source::setShouldApplyRotation):

LayoutTests:

* webrtc/video-rotation-no-cvo-expected.txt: Added.
* webrtc/video-rotation-no-cvo.html: Added.

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

2 months agoRemove use of PlatformMediaSession types in AudioSession
youenn@apple.com [Fri, 13 Mar 2020 10:10:01 +0000 (10:10 +0000)]
Remove use of PlatformMediaSession types in AudioSession
https://bugs.webkit.org/show_bug.cgi?id=208995

Reviewed by Eric Carlson.

Source/WebCore:

Remove type for beginInterruption since AudioSession always trigger system interruptions.
Have a dedicated type for endInterruption.
No change of behavior.

* platform/audio/AudioSession.cpp:
(WebCore::AudioSession::beginInterruption):
(WebCore::AudioSession::endInterruption):
* platform/audio/AudioSession.h:
* platform/audio/ios/AudioSessionIOS.mm:
(-[WebInterruptionObserverHelper interruption:]):
(WebCore::AudioSession::beginInterruption):
(WebCore::AudioSession::endInterruption):
* platform/audio/ios/MediaSessionManagerIOS.h:

Source/WebKit:

Update code according WebCore API changes.
Make use of AudioSession current code path to make RemoteAudioSession notify its observers.

* GPUProcess/media/RemoteAudioSessionProxy.cpp:
(WebKit::RemoteAudioSessionProxy::setCategory):
(WebKit::RemoteAudioSessionProxy::beginInterruption):
(WebKit::RemoteAudioSessionProxy::endInterruption):
* GPUProcess/media/RemoteAudioSessionProxy.h:
* GPUProcess/media/RemoteAudioSessionProxyManager.cpp:
(WebKit::RemoteAudioSessionProxyManager::tryToSetActiveForProcess):
(WebKit::RemoteAudioSessionProxyManager::beginAudioSessionInterruption):
(WebKit::RemoteAudioSessionProxyManager::endAudioSessionInterruption):
* GPUProcess/media/RemoteAudioSessionProxyManager.h:
* WebProcess/GPU/media/RemoteAudioSession.cpp:
(WebKit::RemoteAudioSession::beginInterruption): Deleted.
(WebKit::RemoteAudioSession::endInterruption): Deleted.
* WebProcess/GPU/media/RemoteAudioSession.h:
* WebProcess/GPU/media/RemoteAudioSession.messages.in:

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

2 months agoRelease build fix after r258384.
rniwa@webkit.org [Fri, 13 Mar 2020 09:46:25 +0000 (09:46 +0000)]
Release build fix after r258384.

* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::threadEntry):
(WebKit::PDFPlugin::ByteRangeRequest::maybeComplete):

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

2 months agoRemove unused affectedBy style flags
antti@apple.com [Fri, 13 Mar 2020 08:33:54 +0000 (08:33 +0000)]
Remove unused affectedBy style flags
https://bugs.webkit.org/show_bug.cgi?id=209009

Reviewed by Antoine Quint.

These flags are unused after r258321. Remove the flags and the code that generates them.

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne const):
* cssjit/SelectorCompiler.cpp:
(WebCore::SelectorCompiler::addStyleRelationFunction):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsActive):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsHovered):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasFocusWithin):
* dom/Element.cpp:
(WebCore::Element::hasFlagsSetDuringStylingOfChildren const):
(WebCore::Element::resetStyleRelations):
* dom/Element.h:
(WebCore::Element::styleAffectedByEmpty const):
(WebCore::Element::descendantsAffectedByPreviousSibling const):
(WebCore::Element::setStyleAffectedByEmpty):
(WebCore::Element::setDescendantsAffectedByPreviousSibling):
(WebCore::Element::styleAffectedByActive const): Deleted.
(WebCore::Element::styleAffectedByFocusWithin const): Deleted.
(WebCore::Element::childrenAffectedByHover const): Deleted.
(WebCore::Element::setStyleAffectedByFocusWithin): Deleted.
(WebCore::Element::setChildrenAffectedByHover): Deleted.
(WebCore::Element::setStyleAffectedByActive): Deleted.
* dom/Node.h:
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::RenderStyle):
* rendering/style/RenderStyle.h:
(WebCore::RenderStyle::affectedByDrag const):
(WebCore::RenderStyle::NonInheritedFlags::operator== const):
(WebCore::RenderStyle::affectedByHover const): Deleted.
(WebCore::RenderStyle::affectedByActive const): Deleted.
(WebCore::RenderStyle::setAffectedByHover): Deleted.
(WebCore::RenderStyle::setAffectedByActive): Deleted.
* style/StyleRelations.cpp:
(WebCore::Style::commitRelationsToRenderStyle):
(WebCore::Style::commitRelations):
* style/StyleRelations.h:
* style/StyleSharingResolver.cpp:
(WebCore::Style::SharingResolver::canShareStyleWithElement const):

Compare the hasFocusWithin bit instead.

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

2 months agoUnreviewed, change ASSERT to ASSERT_WITH_SECURITY_IMPLICATION since it is now enabled...
ysuzuki@apple.com [Fri, 13 Mar 2020 07:57:16 +0000 (07:57 +0000)]
Unreviewed, change ASSERT to ASSERT_WITH_SECURITY_IMPLICATION since it is now enabled under ENABLE(SECURITY_ASSERTIONS)
https://bugs.webkit.org/show_bug.cgi?id=209041
<rdar://problem/59705631>

* runtime/JSCast.h:
(JSC::jsCast):

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

2 months agoReport crashed cell in jsCast in debug builds
ysuzuki@apple.com [Fri, 13 Mar 2020 07:53:28 +0000 (07:53 +0000)]
Report crashed cell in jsCast in debug builds
https://bugs.webkit.org/show_bug.cgi?id=209041
<rdar://problem/59705631>

Reviewed by Mark Lam.

Source/JavaScriptCore:

To collect more information when crashing with jsCast, we attempt to use reportZappedCellAndCrash.
If it succeeds, we can get more information in registers. We enable this only for ASSERT_ENABLED
build. For non ASSERT_ENABLED, we keep the original assertion since this assertion can be enabled
via ENABLE(SECURITY_ASSERTIONS).

* heap/SlotVisitor.cpp:
(JSC::SlotVisitor::appendToMarkStack):
(JSC::SlotVisitor::visitChildren):
(JSC::SlotVisitor::reportZappedCellAndCrash): Deleted.
* heap/SlotVisitor.h:
* runtime/JSCast.h:
(JSC::jsCast):
* runtime/JSCell.cpp:
(JSC::reportZappedCellAndCrash):
* runtime/JSCell.h:

Source/WebCore:

We should take JSLock when touching JSC::VM.

* page/MemoryRelease.cpp:
(WebCore::logMemoryStatisticsAtTimeOfDeath):
* page/PerformanceLogging.cpp:
(WebCore::PerformanceLogging::memoryUsageStatistics):

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

2 months agoPull in JS tests from "Internal" when there are "Internal" tests in an adjacent directory
sbarati@apple.com [Fri, 13 Mar 2020 07:24:36 +0000 (07:24 +0000)]
Pull in JS tests from "Internal" when there are "Internal" tests in an adjacent directory
https://bugs.webkit.org/show_bug.cgi?id=209038

Reviewed by Keith Miller.

This allows us to automatically pull in some tests that are in non open sourced Apple
checkouts.

* Scripts/run-javascriptcore-tests:
(runJSCStressTests):

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

2 months agoAdd a very verbose logging mode for incremental PDF loading
beidson@apple.com [Fri, 13 Mar 2020 05:55:58 +0000 (05:55 +0000)]
Add a very verbose logging mode for incremental PDF loading
https://bugs.webkit.org/show_bug.cgi?id=208975

Reviewed by Simon Fraser.

Adds a verbose logging channel that includes a full dump of the PDFPlugin's loading status
for each logging message.

* Platform/Logging.h:

* WebProcess/Plugins/PDF/PDFPlugin.h:
* WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::pdfLog):
(WebKit::PDFPlugin::logStreamLoader):
(WebKit::PDFPlugin::verboseLog):
(WebKit::dataProviderGetBytesAtPositionCallback):
(WebKit::dataProviderGetByteRangesCallback):
(WebKit::PDFPlugin::getResourceBytesAtPosition):
(WebKit::PDFPlugin::adoptBackgroundThreadDocument):
(WebKit::PDFPlugin::ByteRangeRequest::completeWithBytes):
(WebKit::PDFPlugin::ByteRangeRequest::completeWithAccumulatedData):
(WebKit::PDFPlugin::forgetLoader):

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

2 months agordar://problem/60359230 Mark locationManager:didChangeAuthorizationStatus: as deprecated.
ap@apple.com [Fri, 13 Mar 2020 05:45:24 +0000 (05:45 +0000)]
rdar://problem/60359230 Mark locationManager:didChangeAuthorizationStatus: as deprecated.

* Misc/WebGeolocationCoreLocationProvider.mm:
(-[WebGeolocationCoreLocationProvider locationManager:didChangeAuthorizationStatus:]):

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

2 months agoREGRESSION(r255957): Element with scroll-behavior:smooth isn't draggable after r255957
cathiechen@igalia.com [Fri, 13 Mar 2020 05:30:54 +0000 (05:30 +0000)]
REGRESSION(r255957): Element with scroll-behavior:smooth isn't draggable after r255957
https://bugs.webkit.org/show_bug.cgi?id=208566

Reviewed by Simon Fraser and Frédéric Wang.

Source/WebCore:

To perform smooth scroll, RenderLayer::scrollRectToVisible checks the value of scroll-behavior.
It starts an animated scrolling if scroll-behavior is smooth.
On the other hand, the drag action would start an autoscroll if the element is scrollable.
The autoscroll uses m_autoscrollTimer which is a repeating timer, when the timer fired it calls
scrollRectToVisible with different positions.
So if performing autoscroll on scroll-bahavior: smooth element, there are two nested animations.
When timer fired, scrollRectToVisible is called, because of scroll-behavior:smooth, it starts
animated scrolling not instant scrolling. Then there's the next timer fired, the previous
animated scrolling would be canceled. Eventually, the element becomes un-draggable.
To fix this, while performing autoscroll, scrollRectToVisible shouldn't trigger animated scrolling
no matter what the value of scroll-behavior is.

Test: fast/events/drag-smooth-scroll-element.html

* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::scrollRectToVisible):
(WebCore::RenderLayer::autoscroll):
* rendering/RenderLayer.h:

LayoutTests:

The test uses eventSender to generate drag action.

* fast/events/drag-smooth-scroll-element-expected.txt: Added.
* fast/events/drag-smooth-scroll-element.html: Added.
* platform/ios/TestExpectations: IOS doesn't support mouse events, so skip the test.

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

2 months agoDFG nodes that take a TypedArray's storage need to keepAlive the TypedArray
keith_miller@apple.com [Fri, 13 Mar 2020 04:16:36 +0000 (04:16 +0000)]
DFG nodes that take a TypedArray's storage need to keepAlive the TypedArray
https://bugs.webkit.org/show_bug.cgi?id=209035

Reviewed by Saam Barati.

It might be possible to produce a graph where the last reference to a TypedArray
is via a GetByVal or PutByVal. Since those nodes don't create any reference to the
TypedArray in B3 we may end up not keeping the TypedArray alive until after the
storage access.

* ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileAtomicsReadModifyWrite):
(JSC::FTL::DFG::LowerDFGToB3::compileGetByVal):
(JSC::FTL::DFG::LowerDFGToB3::compilePutByVal):

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

2 months agoRenderTreeNeedsLayoutChecker asserts with imported/w3c/web-platform-tests/css/css...
zalan@apple.com [Fri, 13 Mar 2020 03:47:55 +0000 (03:47 +0000)]
RenderTreeNeedsLayoutChecker asserts with imported/w3c/web-platform-tests/css/css-position/position-absolute-crash-chrome-005.html
https://bugs.webkit.org/show_bug.cgi?id=209022
<rdar://problem/60390647>

Reviewed by Simon Fraser.

Source/WebCore:

Fix the case when
1. the block level box is no longer the containing block for its out-of-flow descendants and
2. the new containing block does not get marked dirty because there's a re-layout boundary (overflow: hidden)
between the old and the new containing block.

Test: fast/block/containing-block-for-out-of-flow-becomes-static.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::removePositionedObjectsIfNeeded):
(WebCore::RenderBlock::removePositionedObjects):

LayoutTests:

* TestExpectations:
* fast/block/containing-block-for-out-of-flow-becomes-static-expected.html: Added.
* fast/block/containing-block-for-out-of-flow-becomes-static.html: Added.

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

2 months agoCorrect preference handling and naming conventions in AppBound browsing preferences
bfulgham@apple.com [Fri, 13 Mar 2020 03:09:44 +0000 (03:09 +0000)]
Correct preference handling and naming conventions in AppBound browsing preferences
https://bugs.webkit.org/show_bug.cgi?id=209031
<rdar://problem/60396298>

Reviewed by John Wilander.

Source/WebKit:

I made a mistake in the handling of preferences related to the IsInAppBrowserPrivacyEnabled
and the quirk flag, which led to some code not executing when expected.

This patch does the following:

1. Uses the correct naming scheme for WebKit Internal Debug flags. They should be
   'WebKitDebug', not 'WebKitInternal' or 'WebKitInternalDebug'.
2. Updates the local quirk state in WebPage when page settings change.

* UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::parameters):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):

Source/WebKitLegacy/mac:

This patch consistently uses the correct naming scheme for WebKit Internal Debug flags.
They should be 'WebKitDebug', not 'WebKitInternal' or 'WebKitInternalDebug'.

* WebView/WebPreferenceKeysPrivate.h:
* WebView/WebPreferences.mm:
(+[WebPreferences initialize]):
(-[WebPreferences isInAppBrowserPrivacyEnabled]):
(-[WebPreferences setInAppBrowserPrivacyEnabled:]):
(-[WebPreferences needsInAppBrowserPrivacyQuirks]):
(-[WebPreferences setNeedsInAppBrowserPrivacyQuirks:]):

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

2 months agoWebPageProxy::SaveImageToLibrary should validate its `imageSize` parameter
ddkilzer@apple.com [Fri, 13 Mar 2020 00:15:55 +0000 (00:15 +0000)]
WebPageProxy::SaveImageToLibrary should validate its `imageSize` parameter
<https://webkit.org/b/209012>
<rdar://problem/60181295>

Reviewed by Chris Dumez.

* UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::saveImageToLibrary):
- Validate upper bound of `imageSize` parameter.
- Add static_cast<size_t>() to `imageSize` parameter to denote
  type change.

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

2 months agohttp/tests/paymentrequest/page-cache-completed-payment-response.https.html is flaky...
cdumez@apple.com [Thu, 12 Mar 2020 23:55:06 +0000 (23:55 +0000)]
http/tests/paymentrequest/page-cache-completed-payment-response.https.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=207385
<rdar://problem/59260167>

Unreviewed, address flakiness by only making sure that the promises get rejected, without checking
which error it is actually rejected with, since this is racy.

* http/tests/paymentrequest/page-cache-completed-payment-response.https.html:
* platform/mac-wk2/TestExpectations:

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

2 months ago[ Mac ] fast/history/page-cache-webdatabase-pending-transaction.html is timing out
cdumez@apple.com [Thu, 12 Mar 2020 23:49:31 +0000 (23:49 +0000)]
[ Mac ] fast/history/page-cache-webdatabase-pending-transaction.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=207010
<rdar://problem/59035295>

Unreviewed, silence console messages to address flakiness.

LayoutTests/imported/w3c:

* web-platform-tests/workers/WorkerGlobalScope_ErrorEvent_lineno-expected.txt:

LayoutTests:

* TestExpectations:
* platform/mac/TestExpectations:

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

2 months agoCrash in TextManipulationController::replace
rniwa@webkit.org [Thu, 12 Mar 2020 23:29:31 +0000 (23:29 +0000)]
Crash in TextManipulationController::replace
https://bugs.webkit.org/show_bug.cgi?id=209021

Reviewed by Wenson Hsieh.

Source/WebCore:

This patch addresses two issues that can lead to a crash in TextManipulationController::replace.

The biggest issue here is that commonAncestor can be a descendent of insertionPoint's containerNode.
Addressed this issue by computing the first node to remove in the same traveral where commonAncestor
is computed by way of remembering the very first content node (firstContentNode). This also lets us
eliminate the secondary, redundant traversal to discover all the nodes to remove.

In addition, the set of nodes to remove could sometimes contain commonAncestor and its ancestors.
This patch addresses this issue by removing all inclusive ancestors of commonAncestor from nodesToRemove.

* editing/TextManipulationController.cpp:
(WebCore::TextManipulationController::replace):

Tools:

Added a regression test.

* TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TextManipulation.CompleteTextManipulationShouldReplaceContentFollowedAfterImageInCSSTable):

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

2 months agoREGRESSION (257740?): [ iOS ] fast/events/autoscroll-in-iframe.html is flaky failing
jacob_uphoff@apple.com [Thu, 12 Mar 2020 23:21:47 +0000 (23:21 +0000)]
REGRESSION (257740?): [ iOS ] fast/events/autoscroll-in-iframe.html is flaky failing
https://bugs.webkit.org/show_bug.cgi?id=209025

Unreviewed test gardening.

* platform/ios-wk2/TestExpectations:

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

2 months agoCheck for overflows in MachMessage::messageSize()
cdumez@apple.com [Thu, 12 Mar 2020 23:17:27 +0000 (23:17 +0000)]
Check for overflows in MachMessage::messageSize()
https://bugs.webkit.org/show_bug.cgi?id=209020
<rdar://problem/58264215>

Reviewed by Alex Christensen.

* Platform/IPC/cocoa/ConnectionCocoa.mm:
(IPC::Connection::sendOutgoingMessage):
* Platform/IPC/cocoa/MachMessage.cpp:
(IPC::MachMessage::messageSize):
* Platform/IPC/cocoa/MachMessage.h:

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

2 months ago[ Mac wk2 Debug ] webgpu/whlsl/vector-compare.html is flaky crashing.
lawrence.j@apple.com [Thu, 12 Mar 2020 23:14:25 +0000 (23:14 +0000)]
[ Mac wk2 Debug ] webgpu/whlsl/vector-compare.html is flaky crashing.
https://bugs.webkit.org/show_bug.cgi?id=209024

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

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

2 months ago[ macOS iOS ] fast/dom/connected-subframe-counter-overflow.html is flaky timing out
cdumez@apple.com [Thu, 12 Mar 2020 23:10:43 +0000 (23:10 +0000)]
[ macOS iOS ] fast/dom/connected-subframe-counter-overflow.html is flaky timing out
https://bugs.webkit.org/show_bug.cgi?id=207152
<rdar://problem/59127411>

Unreviewed, mark the test as slow instead of flaky timeout. The test is slow to run because
it checks for some overflow and adds a lot of iframes to the document.

This patch also speed up the test a bit by marking the iframes as display:none *before* inserting
them into the document. We also now add the frames in a timer to yield and make sure that the
main thread stays responsive while running this test.

* TestExpectations:
* platform/ios/TestExpectations:
* platform/mac/TestExpectations:

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

2 months ago[ Mac wk2 Release ] fast/dom/navigator-detached-no-crash.html flaky failing.
cdumez@apple.com [Thu, 12 Mar 2020 22:43:06 +0000 (22:43 +0000)]
[ Mac wk2 Release ] fast/dom/navigator-detached-no-crash.html flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=207151
<rdar://problem/59126935>

Unreviewed, silence console warnings to address flakiness.

* TestExpectations:
* platform/mac-wk1/fast/dom/navigator-detached-no-crash-expected.txt:
* platform/mac-wk2/TestExpectations:
* platform/mac-wk2/fast/dom/navigator-detached-no-crash-expected.txt:

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

2 months ago[ Catalina wk2 ] webrtc/video-autoplay1.html is flaky failing.
lawrence.j@apple.com [Thu, 12 Mar 2020 21:56:10 +0000 (21:56 +0000)]
[ Catalina wk2 ] webrtc/video-autoplay1.html is flaky failing.
https://bugs.webkit.org/show_bug.cgi?id=209018

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

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

2 months ago[CMake] Find modules should find pkg-config with find_package(PkgConfig QUIET)
annulen@yandex.ru [Thu, 12 Mar 2020 21:42:19 +0000 (21:42 +0000)]
[CMake] Find modules should find pkg-config with find_package(PkgConfig QUIET)
https://bugs.webkit.org/show_bug.cgi?id=208948

Reviewed by Michael Catanzaro.

* Source/cmake/FindATK.cmake:
* Source/cmake/FindATKBridge.cmake:
* Source/cmake/FindATSPI.cmake:
* Source/cmake/FindCairo.cmake:
* Source/cmake/FindCairoGL.cmake:
* Source/cmake/FindEGL.cmake:
* Source/cmake/FindEnchant.cmake:
* Source/cmake/FindFontconfig.cmake:
* Source/cmake/FindGDK3.cmake:
* Source/cmake/FindGLIB.cmake:
* Source/cmake/FindGObjectIntrospection.cmake:
* Source/cmake/FindGStreamer.cmake:
* Source/cmake/FindGTK3.cmake:
* Source/cmake/FindGTKUnixPrint.cmake:
* Source/cmake/FindHarfBuzz.cmake:
* Source/cmake/FindLibEpoxy.cmake:
* Source/cmake/FindLibNotify.cmake:
* Source/cmake/FindLibPSL.cmake:
* Source/cmake/FindLibSoup.cmake:
* Source/cmake/FindLibseccomp.cmake:
* Source/cmake/FindLibsecret.cmake:
* Source/cmake/FindLibtasn1.cmake:
* Source/cmake/FindLibxkbcommon.cmake:
* Source/cmake/FindNghttp2.cmake:
* Source/cmake/FindOpenGL.cmake:
* Source/cmake/FindOpenGLES2.cmake:
* Source/cmake/FindOpenJPEG.cmake:
* Source/cmake/FindSQLite3.cmake:
* Source/cmake/FindWOFF2Dec.cmake:
* Source/cmake/FindWPE.cmake:
* Source/cmake/FindWPEBackend-fdo.cmake:
* Source/cmake/FindWayland.cmake:
* Source/cmake/FindWaylandProtocols.cmake:
* Source/cmake/FindWebP.cmake:

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

2 months ago[macOS] _AXSApplicationAccessibilityEnabled should not be called
pvollan@apple.com [Thu, 12 Mar 2020 21:36:08 +0000 (21:36 +0000)]
[macOS] _AXSApplicationAccessibilityEnabled should not be called
https://bugs.webkit.org/show_bug.cgi?id=208953

Reviewed by Brent Fulgham.

Source/WebCore:

The function _AXSApplicationAccessibilityEnabled and the notification kAXSApplicationAccessibilityEnabledNotification
exist on macOS, but they do not have the same behavior as on iOS, and should not be used in the same way. Using this
function and notification on macOS was introduced in <https://bugs.webkit.org/show_bug.cgi?id=208690>, and this patch
partially reverts this behavior.

API test: WebKit.IsRemoteUIAppForAccessibility

* testing/Internals.cpp:
(WebCore::Internals::isRemoteUIAppForAccessibility):
* testing/Internals.h:
* testing/Internals.idl:
* testing/Internals.mm:
(WebCore::Internals::isRemoteUIAppForAccessibility):

Source/WebCore/PAL:

Declare method to check if the process is a remote UI app for accessibility.

* pal/spi/cocoa/NSAccessibilitySPI.h:

Source/WebKit:

On macOS, stop using the function _AXSApplicationAccessibilityEnabled and listening to the notification
kAXSApplicationAccessibilityEnabledNotification, since they do not have the same behavior as on iOS.

* UIProcess/Cocoa/WebProcessPoolCocoa.mm:
(WebKit::WebProcessPool::platformInitializeWebProcess):
(WebKit::WebProcessPool::registerNotificationObservers):
(WebKit::WebProcessPool::unregisterNotificationObservers):
* UIProcess/Cocoa/WebProcessProxyCocoa.mm:
(WebKit::WebProcessProxy::unblockAccessibilityServerIfNeeded):
* WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeProcess):
(WebKit::WebProcess::unblockAccessibilityServer):

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:

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

2 months ago[CMake] Avoid calling FPHSA multiple time in FindPerlModules.cmake
annulen@yandex.ru [Thu, 12 Mar 2020 21:33:42 +0000 (21:33 +0000)]
[CMake] Avoid calling FPHSA multiple time in FindPerlModules.cmake
https://bugs.webkit.org/show_bug.cgi?id=208948

Reviewed by Michael Catanzaro.

* Source/cmake/FindPerlModules.cmake:

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

2 months agoResource load statistics data summary should return all third party data
katherine_cheney@apple.com [Thu, 12 Mar 2020 21:22:49 +0000 (21:22 +0000)]
Resource load statistics data summary should return all third party data
https://bugs.webkit.org/show_bug.cgi?id=209000
<rdar://problem/60348306>

Reviewed by John Wilander.

Source/WebKit:

No new tests, this patch adjusts old tests to test this new behavior

* NetworkProcess/Classifier/ResourceLoadStatisticsDatabaseStore.cpp:
* UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _setThirdPartyCookieBlockingMode:onlyOnSitesWithoutUserInteraction:completionHandler:]):
* UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
Added new function _setThirdPartyCookieBlockingMode so API tests can
set this parameter.

Tools:

Marked only 2 of 3 domains prevalent in data summary tests to ensure
the call returns all third parties, not just prevalent ones.
Added a more aggressive check for the size of the array at the
beginning of the test to ensure the array is still returning 3 values.
Also removed the ASSERT statements as they seem to cause timeouts (not
clear crashes) when they are not true, which is hard to debug.
If these values are nil, the test will fail in the EXPECT_WK_STREQ
checks, we don't need ASSERT statements.

* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
(TEST):

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

2 months agoCache the ScrollView platformWidget to avoid [WebAccessibilityObjectWrapper scrollVie...
andresg_22@apple.com [Thu, 12 Mar 2020 21:12:13 +0000 (21:12 +0000)]
Cache the ScrollView platformWidget to avoid [WebAccessibilityObjectWrapper scrollViewParent] hitting the main thread too often.
https://bugs.webkit.org/show_bug.cgi?id=209010

Reviewed by Chris Fleizach.

- [WebAccessibilityObjectWrapper scrollViewParent] is called very often
and blocks the AXThread to retrieve a value from the main thread. This
change caches the PlatformWidget for the corresponding ScrollView (an
NSView) to avoid hitting the main thread that often.
- In Addition, made the ScrollView member of AccessibilityScrollView a
WeakPtr instead of a naked pointer.
- Removed an unused lock from AXIsolatedObject and the const qualifier
from the return value of stringAttributeValue which is unnecessary.

* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityObjectInterface.h:
* accessibility/AccessibilityScrollView.cpp:
(WebCore::AccessibilityScrollView::AccessibilityScrollView):
(WebCore::AccessibilityScrollView::platformWidget const):
(WebCore::AccessibilityScrollView::widgetForAttachmentView const):
(WebCore::AccessibilityScrollView::webAreaObject const):
(WebCore::AccessibilityScrollView::documentFrameView const):
(WebCore::AccessibilityScrollView::parentObject const):
(WebCore::AccessibilityScrollView::parentObjectIfExists const):
(WebCore::AccessibilityScrollView::getScrollableAreaIfScrollable const):
* accessibility/AccessibilityScrollView.h:
* accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::initializeAttributeData):
(WebCore::AXIsolatedObject::stringAttributeValue const):
(WebCore::AXIsolatedObject::platformWidget const):
* accessibility/isolatedtree/AXIsolatedObject.h:
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper scrollViewParent]):

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

2 months agoresultsdpy: Add script to run local instance
jbedard@apple.com [Thu, 12 Mar 2020 21:06:33 +0000 (21:06 +0000)]
resultsdpy: Add script to run local instance
https://bugs.webkit.org/show_bug.cgi?id=208746

Rubber-stamped by Aakash Jain.

* resultsdbpy/resultsdbpy/example: Added.
* resultsdbpy/resultsdbpy/example/__init__.py: Added.
* resultsdbpy/resultsdbpy/example/environment.py: Added.
(Environment): Organize environment variables used by results database.
(ModelFromEnvironment): Construct the database model from the environment.
(main): Create and drop tables, if required.
* resultsdbpy/resultsdbpy/example/main.py: Added.
(health): Web-server health check.
(handle_errors):
(main): Run results database web-server.
* resultsdbpy/resultsdbpy/example/worker.py: Added.
(main): Asynchronously process uploaded results.
* resultsdbpy/resultsdbpy/run: Added.

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

2 months ago[ Mac wk2 ] fast/scrolling/momentum-scroll-with-borders.html is flaky timing out.
lawrence.j@apple.com [Thu, 12 Mar 2020 20:18:39 +0000 (20:18 +0000)]
[ Mac wk2 ] fast/scrolling/momentum-scroll-with-borders.html is flaky timing out.
https://bugs.webkit.org/show_bug.cgi?id=209013

Unreviewed test gardening.

* platform/mac-wk2/TestExpectations:

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

2 months agorun-webkit-tests --use-gpu-process should enable GPU Process for canvas
wenson_hsieh@apple.com [Thu, 12 Mar 2020 19:10:53 +0000 (19:10 +0000)]
run-webkit-tests --use-gpu-process should enable GPU Process for canvas
https://bugs.webkit.org/show_bug.cgi?id=209004

Reviewed by Tim Horton.

Add "RenderCanvasInGPUProcessEnabled" to the list of internal features that should be enabled when
`use_gpu_process` is specified.

* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):

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

2 months agoAttributes SelectionTextMarkerRange and Start/EndTextMarker need to run on the main...
andresg_22@apple.com [Thu, 12 Mar 2020 19:06:54 +0000 (19:06 +0000)]
Attributes SelectionTextMarkerRange and Start/EndTextMarker need to run on the main thread.
https://bugs.webkit.org/show_bug.cgi?id=208996

Reviewed by Chris Fleizach.

Covered by existing tests.

Dispatch to the main thread the computation of these accessibility attributes.

* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

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

2 months ago[WPE] Gardening, update TestExpectations
dpino@igalia.com [Thu, 12 Mar 2020 19:02:48 +0000 (19:02 +0000)]
[WPE] Gardening, update TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=208993

Unreviewed gardening.

* platform/wpe/TestExpectations:

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

2 months agoMake flatpack import for run-webkit-tests only happen on linux systems
jlewis3@apple.com [Thu, 12 Mar 2020 19:01:51 +0000 (19:01 +0000)]
Make flatpack import for run-webkit-tests only happen on linux systems
https://bugs.webkit.org/show_bug.cgi?id=208954

Reviewed by Philippe Normand.

* Scripts/run-webkit-tests: Added an if statement to find the system platform
to determine if we need the flatpackutils import.

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

2 months agoAX: Isolated tree: Crash in URL retrieval
andresg_22@apple.com [Thu, 12 Mar 2020 18:43:02 +0000 (18:43 +0000)]
AX: Isolated tree: Crash in URL retrieval
https://bugs.webkit.org/show_bug.cgi?id=208942
<rdar://problem/60337588>

Reviewed by Chris Fleizach.

Source/WebCore:

Test: accessibility/url-test.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::url const): Check for m_renderer
before dereferencing and re-use the associated Node. Also fixes the last
type check and downcast that were using different types.

LayoutTests:

Moved the url-test.html test to the root directory so that it is
executed in both Mac and iOS.

* accessibility/url-test-expected.txt: Renamed from LayoutTests/accessibility/ios-simulator/url-test-expected.txt.
* accessibility/url-test.html: Renamed from LayoutTests/accessibility/ios-simulator/url-test.html.
* platform/ios-simulator/TestExpectations:
* platform/win/TestExpectations:

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

2 months agoREGRESSION: [ Mac iOS wk2 ] imported/w3c/web-platform-tests/html/semantics/scripting...
tsavell@apple.com [Thu, 12 Mar 2020 18:34:35 +0000 (18:34 +0000)]
REGRESSION: [ Mac iOS wk2 ] imported/w3c/web-platform-tests/html/semantics/scripting-1/the-script-element/execution-timing/085.html is failing
https://bugs.webkit.org/show_bug.cgi?id=209006

Unreviewed test gardening

* platform/ios-wk2/TestExpectations:
* platform/mac-wk2/TestExpectations:

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

2 months ago[JSC] Use CacheableIdentifier in ByValInfo
ysuzuki@apple.com [Thu, 12 Mar 2020 18:33:40 +0000 (18:33 +0000)]
[JSC] Use CacheableIdentifier in ByValInfo
https://bugs.webkit.org/show_bug.cgi?id=208978

Reviewed by Saam Barati.

CodeBlock::finalizeUnconditionally discards JITData. And this includes ByValInfo, which holds Identifier.
However, finalizeUnconditionally is only guaranteeing that the main thread is not working. It can be invoked
in the heap thread, and it is not not setting the AtomStringTable for this heap thread. If Identifier destroys
AtomStringImpl, which fails to unregister itself from the table.

In this patch,

    1. We explicitly set nullptr for the current AtomStringTable to catch the bug as soon as possible in GC end phase.
    2. We use CacheableIdentifier in ByValInfo to avoid destroying Identifier in CodeBlock::finalizeUnconditionally.

* CMakeLists.txt:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Sources.txt:
* bytecode/ByValInfo.cpp: Added.
(JSC::ByValInfo::visitAggregate):
* bytecode/ByValInfo.h:
* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::stronglyVisitStrongReferences):
* bytecode/CodeBlock.h:
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::handlePutByVal):
* heap/Heap.cpp:
(JSC::Heap::runEndPhase):
* jit/JIT.h:
* jit/JITOperations.cpp:
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emitByValIdentifierCheck):
* runtime/CacheableIdentifier.h:

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

2 months agoWKWebView.hasOnlySecureContent should be correct after back/forward navigations
commit-queue@webkit.org [Thu, 12 Mar 2020 18:28:40 +0000 (18:28 +0000)]
WKWebView.hasOnlySecureContent should be correct after back/forward navigations
https://bugs.webkit.org/show_bug.cgi?id=207609
Source/WebCore:

<rdar://problem/59371252>

Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-12
Reviewed by Ryosuke Niwa.

The web process informs the UI process of insecure content loads when http resources are requested from https pages.
The web process also remembers that this happened.
Rather than ask the UI process during a navigation, which can sometimes get information about the wrong navigation,
just use the remembered values.  We will need to do something for legacy TLS loads too, but I left that code as it is
for this patch.  Another is coming soon.

Covered by API tests.

* history/CachedFrame.cpp:
(WebCore::CachedFrame::setUsedLegacyTLS):
(WebCore::CachedFrame::hasInsecureContent const):
(WebCore::CachedFrame::setHasInsecureContent): Deleted.
* history/CachedFrame.h:
(WebCore::CachedFrame::hasInsecureContent const): Deleted.
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::commitProvisionalLoad):

Source/WebKit:

Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-12
Reviewed by Ryosuke Niwa.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::usedLegacyTLS):
(WebKit::WebPageProxy::hasInsecureContent): Deleted.
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::savePlatformDataToCachedFrame):

Tools:

Patch by Alex Christensen <achristensen@webkit.org> on 2020-03-12
Reviewed by Ryosuke Niwa.

* TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:
(TestWebKitAPI::TEST):

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

2 months agoREGRESSION (r257938): Some pointerevents/ios/touch-action-region tests started to...
simon.fraser@apple.com [Thu, 12 Mar 2020 18:18:10 +0000 (18:18 +0000)]
REGRESSION (r257938): Some pointerevents/ios/touch-action-region tests started to fail
https://bugs.webkit.org/show_bug.cgi?id=209005
<rdar://problem/60337239>

Reviewed by Tim Horton, Wenson Hsieh.

Source/WebCore:

We need to continue to paint event regions if there are touch-action elements.

Tested by existing tests.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateEventRegion):

LayoutTests:

New baselines for tests with overflow:scroll, where the scrolled container gets
a rectangular event region.

* pointerevents/ios/touch-action-region-backing-sharing-expected.txt:
* pointerevents/ios/touch-action-region-overflow-expected.txt:

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

2 months agoFixed expectations for two tests from 'Pass Failure' to 'Pass ImageOnlyFailure'
jacob_uphoff@apple.com [Thu, 12 Mar 2020 18:15:43 +0000 (18:15 +0000)]
Fixed expectations for two tests from 'Pass Failure' to 'Pass ImageOnlyFailure'
https://bugs.webkit.org/show_bug.cgi?id=205525
https://bugs.webkit.org/show_bug.cgi?id=205524

Unreviewed test gardening

* platform/mac/TestExpectations:

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

2 months agoDrop unused WebProcess::UpdateActivePages IPC
cdumez@apple.com [Thu, 12 Mar 2020 18:05:41 +0000 (18:05 +0000)]
Drop unused WebProcess::UpdateActivePages IPC
https://bugs.webkit.org/show_bug.cgi?id=209002
<rdar://problem/59682658>

Reviewed by Geoffrey Garen.

* WebProcess/WebProcess.messages.in:

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

2 months agoSource/WebCore:
youenn@apple.com [Thu, 12 Mar 2020 17:56:08 +0000 (17:56 +0000)]
Source/WebCore:
FrameLoader should own its FrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=208918

Reviewed by Geoffrey Garen.

Update Frame/FrameLoader constructors to get a UniqueRef<FrameLoaderClient>.
This makes the lifetime management much clearer and allows some WebKit1/WebKit2 clean-up.

Covered by existing tests.

* loader/EmptyClients.cpp:
(WebCore::pageConfigurationWithEmptyClients):
* loader/EmptyFrameLoaderClient.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::FrameLoader):
(WebCore::FrameLoader::~FrameLoader):
(WebCore::FrameLoader::init):
(WebCore::FrameLoader::initForSynthesizedDocument):
(WebCore::FrameLoader::didExplicitOpen):
(WebCore::FrameLoader::receivedFirstData):
(WebCore::FrameLoader::finishedParsing):
(WebCore::FrameLoader::loadArchive):
(WebCore::FrameLoader::setOpener):
(WebCore::FrameLoader::provisionalLoadStarted):
(WebCore::FrameLoader::loadInSameDocument):
(WebCore::FrameLoader::prepareForLoadStart):
(WebCore::FrameLoader::setupForReplace):
(WebCore::FrameLoader::load):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::willLoadMediaElementURL):
(WebCore::FrameLoader::reloadWithOverrideEncoding):
(WebCore::FrameLoader::reload):
(WebCore::FrameLoader::setDocumentLoader):
(WebCore::FrameLoader::commitProvisionalLoad):
(WebCore::FrameLoader::transitionToCommitted):
(WebCore::FrameLoader::clientRedirectCancelledOrFinished):
(WebCore::FrameLoader::clientRedirected):
(WebCore::FrameLoader::closeOldDataSources):
(WebCore::FrameLoader::willChangeTitle):
(WebCore::FrameLoader::dispatchDidFailProvisionalLoad):
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):
(WebCore::FrameLoader::didReachLayoutMilestone):
(WebCore::FrameLoader::didReachVisuallyNonEmptyState):
(WebCore::FrameLoader::frameLoadCompleted):
(WebCore::FrameLoader::checkLoadComplete):
(WebCore::FrameLoader::userAgent const):
(WebCore::FrameLoader::dispatchOnloadEvents):
(WebCore::FrameLoader::detachViewsAndDocumentLoader):
(WebCore::FrameLoader::receivedMainResourceError):
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
(WebCore::FrameLoader::loadedResourceFromMemoryCache):
(WebCore::FrameLoader::loadDifferentDocumentItem):
(WebCore::FrameLoader::cancelledError const):
(WebCore::FrameLoader::blockedByContentBlockerError const):
(WebCore::FrameLoader::blockedError const):
(WebCore::FrameLoader::blockedByContentFilterError const):
(WebCore::FrameLoader::connectionProperties):
(WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
(WebCore::FrameLoader::dispatchGlobalObjectAvailableInAllWorlds):
(WebCore::FrameLoader::didChangeTitle):
(WebCore::FrameLoader::dispatchDidCommitLoad):
(WebCore::FrameLoader::tellClientAboutPastMemoryCacheLoads):
(WebCore::FrameLoader::completePageTransitionIfNeeded):
* loader/FrameLoader.h:
* loader/FrameLoaderClient.h:
* page/Frame.cpp:
(WebCore::Frame::Frame):
(WebCore::Frame::create):
* page/Frame.h:
* page/Page.cpp:
(WebCore::Page::Page):
* page/PageConfiguration.cpp:
(WebCore::PageConfiguration::PageConfiguration):
* page/PageConfiguration.h:
* workers/service/context/SWContextManager.cpp:
* workers/service/context/SWContextManager.h:

Source/WebKit:
FrameLoader should own its FrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=208918

Reviewed by Geoffrey Garen.

Pass a UniqueRef to the PageConfiguration.
Update WebFrameLoaderClient according updated FrameLoaderClient interface.

WebFrame no longer needs to ref/unref itself to keep the loader client alive.
Update WebFrame construction to not need a static_cast at initialization of the main frame.

The ownership is now that a WebCore::FrameLoader owns a FrameLoaderClient who owns a WebFrame.

* WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::tryLoadingUsingURLSchemeHandler):
(WebKit::WebLoaderStrategy::scheduleLoadFromNetworkProcess):
(WebKit::WebLoaderStrategy::tryLoadingSynchronouslyUsingURLSchemeHandler):
(WebKit::WebLoaderStrategy::loadResourceSynchronously):
(WebKit::WebLoaderStrategy::startPingLoad):
(WebKit::WebLoaderStrategy::preconnectTo):
* WebProcess/Storage/WebSWContextManagerConnection.cpp:
(WebKit::WebSWContextManagerConnection::installServiceWorker):
* WebProcess/Storage/WebSWContextManagerConnection.h:
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
(WebKit::WebFrameLoaderClient::~WebFrameLoaderClient):
(WebKit::WebFrameLoaderClient::webPageProxyID const):
(WebKit::WebFrameLoaderClient::pageID const):
(WebKit::WebFrameLoaderClient::frameID const):
(WebKit::WebFrameLoaderClient::detachedFromParent2):
(WebKit::WebFrameLoaderClient::assignIdentifierToInitialRequest):
(WebKit::WebFrameLoaderClient::dispatchWillSendRequest):
(WebKit::WebFrameLoaderClient::shouldUseCredentialStorage):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveResponse):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveContentLength):
(WebKit::WebFrameLoaderClient::dispatchDidFinishLoading):
(WebKit::WebFrameLoaderClient::dispatchDidFailLoading):
(WebKit::WebFrameLoaderClient::dispatchDidDispatchOnloadEvents):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
(WebKit::WebFrameLoaderClient::dispatchDidCancelClientRedirect):
(WebKit::WebFrameLoaderClient::dispatchWillPerformClientRedirect):
(WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
(WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage):
(WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
(WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage):
(WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
(WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
(WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
(WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
(WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
(WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
(WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
(WebKit::WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
(WebKit::WebFrameLoaderClient::dispatchDidLayout):
(WebKit::WebFrameLoaderClient::dispatchShow):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::WebFrameLoaderClient::applyToDocumentLoader):
(WebKit::WebFrameLoaderClient::allowsContentJavaScriptFromMostRecentNavigation const):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
(WebKit::WebFrameLoaderClient::dispatchUnableToImplementPolicy):
(WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
(WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
(WebKit::WebFrameLoaderClient::willReplaceMultipartContent):
(WebKit::WebFrameLoaderClient::didReplaceMultipartContent):
(WebKit::WebFrameLoaderClient::didDisplayInsecureContent):
(WebKit::WebFrameLoaderClient::didRunInsecureContent):
(WebKit::WebFrameLoaderClient::didDetectXSS):
(WebKit::WebFrameLoaderClient::cancelledError const):
(WebKit::WebFrameLoaderClient::blockedError const):
(WebKit::WebFrameLoaderClient::blockedByContentBlockerError const):
(WebKit::WebFrameLoaderClient::cannotShowURLError const):
(WebKit::WebFrameLoaderClient::interruptedForPolicyChangeError const):
(WebKit::WebFrameLoaderClient::blockedByContentFilterError const):
(WebKit::WebFrameLoaderClient::cannotShowMIMETypeError const):
(WebKit::WebFrameLoaderClient::fileDoesNotExistError const):
(WebKit::WebFrameLoaderClient::pluginWillHandleLoadError const):
(WebKit::WebFrameLoaderClient::shouldFallBack const):
(WebKit::WebFrameLoaderClient::restoreViewState):
(WebKit::WebFrameLoaderClient::didFinishLoad):
(WebKit::WebFrameLoaderClient::userAgent const):
(WebKit::WebFrameLoaderClient::createPlugin):
(WebKit::WebFrameLoaderClient::webGLPolicyForURL const):
(WebKit::WebFrameLoaderClient::resolveWebGLPolicyForURL const):
(WebKit::WebFrameLoaderClient::objectContentType):
(WebKit::WebFrameLoaderClient::overrideMediaType const):
(WebKit::WebFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
(WebKit::WebFrameLoaderClient::dispatchGlobalObjectAvailable):
(WebKit::WebFrameLoaderClient::willInjectUserScript):
(WebKit::WebFrameLoaderClient::willCacheResponse const):
(WebKit::WebFrameLoaderClient::createNetworkingContext):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::initWithCoreMainFrame):
(WebKit::WebFrame::createSubframe):
(WebKit::WebFrame::WebFrame):
(WebKit::WebFrame::frameLoaderClient const):
(WebKit::WebFrame::fromCoreFrame):
(WebKit::WebFrame::didReceivePolicyDecision):
* WebProcess/WebPage/WebFrame.h:
(WebKit::WebFrame::create):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::m_processDisplayName):

Source/WebKitLegacy/mac:
FrameLoader should own its FrameLoaderClient
https://bugs.webkit.org/show_bug.cgi?id=208918

Reviewed by Geoffrey Garen.

Update according new Frame/FrameLoader constructors and FrameLoaderClient interface.

* WebCoreSupport/WebFrameLoaderClient.h:
(WebFrameLoaderClient::setWebFrame):
* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::~WebFrameLoaderClient):
(WebFrameLoaderClient::cancelledError const):
(WebFrameLoaderClient::blockedError const):
(WebFrameLoaderClient::blockedByContentBlockerError const):
(WebFrameLoaderClient::cannotShowURLError const):
(WebFrameLoaderClient::interruptedForPolicyChangeError const):
(WebFrameLoaderClient::blockedByContentFilterError const):
(WebFrameLoaderClient::cannotShowMIMETypeError const):
(WebFrameLoaderClient::fileDoesNotExistError const):
(WebFrameLoaderClient::pluginWillHandleLoadError const):
(WebFrameLoaderClient::shouldFallBack const):
(WebFrameLoaderClient::userAgent const):
* WebView/WebFrame.mm:
(+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
(+[WebFrame _createMainFrameWithPage:frameName:frameView:]):
(+[WebFrame _createMainFrameWithSimpleHTMLDocumentWithPage:frameView:style:]):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):

Source/WebKitLegacy/win:
Make sure a preflight fails if response headers are invalid
https://bugs.webkit.org/show_bug.cgi?id=208924

Reviewed by Geoffrey Garen.

* WebCoreSupport/WebFrameLoaderClient.cpp:
(WebFrameLoaderClient::cancelledError const):
(WebFrameLoaderClient::blockedError const):
(WebFrameLoaderClient::blockedByContentBlockerError const):
(WebFrameLoaderClient::cannotShowURLError const):
(WebFrameLoaderClient::interruptedForPolicyChangeError const):
(WebFrameLoaderClient::cannotShowMIMETypeError const):
(WebFrameLoaderClient::fileDoesNotExistError const):
(WebFrameLoaderClient::pluginWillHandleLoadError const):
(WebFrameLoaderClient::shouldFallBack const):
(WebFrameLoaderClient::userAgent const):
(WebFrameLoaderClient::frameLoaderDestroyed): Deleted.
(WebFrameLoaderClient::cancelledError): Deleted.
(WebFrameLoaderClient::blockedError): Deleted.
(WebFrameLoaderClient::blockedByContentBlockerError): Deleted.
(WebFrameLoaderClient::cannotShowURLError): Deleted.
(WebFrameLoaderClient::interruptedForPolicyChangeError): Deleted.
(WebFrameLoaderClient::cannotShowMIMETypeError): Deleted.
(WebFrameLoaderClient::fileDoesNotExistError): Deleted.
(WebFrameLoaderClient::pluginWillHandleLoadError): Deleted.
(WebFrameLoaderClient::shouldFallBack): Deleted.
(WebFrameLoaderClient::userAgent): Deleted.
* WebCoreSupport/WebFrameLoaderClient.h:
* WebFrame.cpp:
(WebFrame::createSubframeWithOwnerElement):

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

2 months agoDrop unused LogGlobalDiagnosticMessageWithValue IPC message
bfulgham@apple.com [Thu, 12 Mar 2020 17:40:35 +0000 (17:40 +0000)]
Drop unused LogGlobalDiagnosticMessageWithValue IPC message
https://bugs.webkit.org/show_bug.cgi?id=208974
<rdar://problem/59682189>

Reviewed by Chris Dumez.

I added these messages for ITP, but we later switched to tracking network sessions
individually and no longer need this "global" message.

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::logGlobalDiagnosticMessageWithValue): Deleted.
* UIProcess/Network/NetworkProcessProxy.h:
* UIProcess/Network/NetworkProcessProxy.messages.in:

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