Timeline
Jan 20, 2018:
- 11:07 PM Changeset in webkit [227275] by
-
- 10 edits in trunk/Source/WebCore
Make garbage collection of MessagePort objects be asynchronous.
https://bugs.webkit.org/show_bug.cgi?id=181910
Reviewed by Andy Estes.
No new tests (Covered by existing tests, including GC-specific ones).
The basic premise here is as follows:
- You can *always* GC a MessagePort that is closed
- You can *always* GC a MessagePort that has no onmessage handler, as incoming messages cannot possibly revive it.
- You can GC a MessagePort, even if it has a message handler, as long as there are no messages in flight between it and the remote port, and as long as the remote port is "maybe eligible for GC."
A MessagePort is considered "maybe eligible for GC" once hasPendingActivity is asked once.
A MessagePort loses "maybe eligible for GC" status once it is used for sending or receiving a message.
The changes to MessagePort.cpp implement the above with a tiny little bool-driven state machine.
- dom/MessagePort.cpp:
(WebCore::MessagePort::postMessage):
(WebCore::MessagePort::disentangle):
(WebCore::MessagePort::registerLocalActivity):
(WebCore::MessagePort::start):
(WebCore::MessagePort::close):
(WebCore::MessagePort::contextDestroyed):
(WebCore::MessagePort::dispatchMessages):
(WebCore::MessagePort::hasPendingActivity const):
(WebCore::MessagePort::isLocallyReachable const):
(WebCore::MessagePort::addEventListener):
(WebCore::MessagePort::removeEventListener):
- dom/MessagePort.h:
- Remove the lock and any background-thread code paths
- Add ASSERT(isMainThread())s throughout
- dom/messageports/MessagePortChannel.cpp:
(WebCore::MessagePortChannel::MessagePortChannel):
(WebCore::MessagePortChannel::includesPort):
(WebCore::MessagePortChannel::entanglePortWithProcess):
(WebCore::MessagePortChannel::disentanglePort):
(WebCore::MessagePortChannel::closePort):
(WebCore::MessagePortChannel::postMessageToRemote):
(WebCore::MessagePortChannel::takeAllMessagesForPort):
(WebCore::MessagePortChannel::checkRemotePortForActivity):
(WebCore::MessagePortChannel::hasAnyMessagesPendingOrInFlight const):
- dom/messageports/MessagePortChannel.h:
Add a callback for a MessagePortChannel to go ask the remote MessagePort object about local activity:
- dom/messageports/MessagePortChannelProvider.h:
- dom/messageports/MessagePortChannelProviderImpl.cpp:
(WebCore::MessagePortChannelProviderImpl::checkRemotePortForActivity):
(WebCore::MessagePortChannelProviderImpl::checkProcessLocalPortForActivity):
(WebCore::MessagePortChannelProviderImpl::hasMessagesForPorts_temporarySync): Deleted.
- dom/messageports/MessagePortChannelProviderImpl.h:
- Remove the lock and any background-thread code paths
- Add ASSERT(isMainThread())s throughout
- dom/messageports/MessagePortChannelRegistry.cpp:
(WebCore::MessagePortChannelRegistry::messagePortChannelCreated):
(WebCore::MessagePortChannelRegistry::messagePortChannelDestroyed):
(WebCore::MessagePortChannelRegistry::didEntangleLocalToRemote):
(WebCore::MessagePortChannelRegistry::didDisentangleMessagePort):
(WebCore::MessagePortChannelRegistry::didCloseMessagePort):
(WebCore::MessagePortChannelRegistry::didPostMessageToRemote):
(WebCore::MessagePortChannelRegistry::takeAllMessagesForPort):
(WebCore::MessagePortChannelRegistry::checkRemotePortForActivity):
(WebCore::MessagePortChannelRegistry::existingChannelContainingPort):
(WebCore::MessagePortChannelRegistry::hasMessagesForPorts_temporarySync): Deleted.
- dom/messageports/MessagePortChannelRegistry.h:
- 8:29 PM Changeset in webkit [227274] by
-
- 27 edits in trunk/Source
[Apple Pay] Stop eagerly loading PassKit.framework
https://bugs.webkit.org/show_bug.cgi?id=181911
<rdar://problem/36555369>
Reviewed by Tim Horton.
Source/WebCore:
r226458 and r226123 added code that caused PassKit.framework to be eagerly loaded when
initializing a WKWebView. This is costly and should only be done when Apple Pay is first used.
To avoid eagerly loading PassKit, this patch does two things:
- Instead of sending the available payment networks as part of WebPageCreationParameters,
PaymentCoordinator asks for them using a syncrhonous message the first time they are needed.
- Instead of setting the Apple Pay preference to false when PassKit can't be loaded,
the following API entry points check for a missing PassKit and return false, or throw
exceptions, or reject promises:
- ApplePaySession.canMakePayments()
- ApplePaySession.canMakePaymentsWithActiveCard()
- ApplePaySession.openPaymentSetup()
- ApplePaySession.begin()
No new tests for (1), which causes no change in behavior. (2) was manually verified by
locally moving aside PassKit.framework, but that's not possible to do in an automated test.
- Modules/applepay/PaymentCoordinator.cpp:
(WebCore::PaymentCoordinator::PaymentCoordinator):
(WebCore::PaymentCoordinator::validatedPaymentNetwork const):
(WebCore::toHashSet): Deleted.
- Modules/applepay/PaymentCoordinator.h:
- Modules/applepay/PaymentCoordinatorClient.h:
- loader/EmptyClients.cpp:
- page/MainFrame.cpp:
(WebCore::MainFrame::MainFrame):
Removed PaymentCoordinator::m_availablePaymentNetworks and made
PaymentCoordinator::validatedPaymentNetwork() call
PaymentCoordinatorClient::validatedPaymentNetwork() instead.
- page/PageConfiguration.h:
Removed availablePaymentNetworks from PageConfiguration.
- testing/Internals.cpp:
(WebCore::Internals::Internals):
- testing/MockPaymentCoordinator.cpp:
(WebCore::MockPaymentCoordinator::validatedPaymentNetwork):
- testing/MockPaymentCoordinator.h:
Implemented PaymentCoordinatorClient::validatedPaymentNetwork().
Source/WebKit:
- Shared/WebPageCreationParameters.cpp:
(WebKit::WebPageCreationParameters::encode const):
(WebKit::WebPageCreationParameters::decode):
- Shared/WebPageCreationParameters.h:
Removed availablePaymentNetworks from WebPageCreationParameters.
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetApplePayEnabled):
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]):
Stopped calling WebPaymentCoordinatorProxy::platformSupportsPayments().
- UIProcess/ApplePay/WebPaymentCoordinatorProxy.cpp:
(WebKit::WebPaymentCoordinatorProxy::availablePaymentNetworks):
- UIProcess/ApplePay/WebPaymentCoordinatorProxy.h:
- UIProcess/ApplePay/WebPaymentCoordinatorProxy.messages.in:
Added message AvailablePaymentNetworks, which synchronously returns a Vector of payment
networks.
- UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
(WebKit::WebPaymentCoordinatorProxy::platformCanMakePayments):
Returned false if PassKitLibrary() fails.
(WebKit::WebPaymentCoordinatorProxy::platformCanMakePaymentsWithActiveCard):
(WebKit::WebPaymentCoordinatorProxy::platformOpenPaymentSetup):
Called completionHandler with false if PassKitLibrary() fails.
(WebKit::WebPaymentCoordinatorProxy::platformAvailablePaymentNetworks):
(WebKit::WebPaymentCoordinatorProxy::availablePaymentNetworks):
Renamed availablePaymentNetworks to platformAvailablePaymentNetworks
(WebKit::WebPaymentCoordinatorProxy::platformSupportsPayments): Deleted.
- UIProcess/ApplePay/mac/WebPaymentCoordinatorProxyMac.mm:
(WebKit::WebPaymentCoordinatorProxy::platformShowPaymentUI):
Called completionHandler with false if PassKitLibrary() fails.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::creationParameters):
Stopped calling WebPaymentCoordinatorProxy::availablePaymentNetworks().
- WebProcess/ApplePay/WebPaymentCoordinator.cpp:
(WebKit::WebPaymentCoordinator::availablePaymentNetworks):
(WebKit::WebPaymentCoordinator::validatedPaymentNetwork):
- WebProcess/ApplePay/WebPaymentCoordinator.h:
Implemented PaymentCoordinatorClient::validatedPaymentNetwork(). m_availablePaymentNetworks
starts off as std::nullopt, but is initialized by sending the AvailablePaymentNetworks sync
message the first time it's accessed.
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
Stopped setting PageConfiguration::availablePaymentNetworks.
Source/WebKitLegacy/mac:
- WebCoreSupport/WebPaymentCoordinatorClient.h:
- WebCoreSupport/WebPaymentCoordinatorClient.mm:
(WebPaymentCoordinatorClient::validatedPaymentNetwork):
Implemented PaymentCoordinatorClient::validatedPaymentNetwork().
- 12:02 PM Changeset in webkit [227273] by
-
- 2 edits in trunk/Tools
API test URLSchemeHandler.Leaks1 is timing out on iOS simulator debug
https://bugs.webkit.org/show_bug.cgi?id=174984
<rdar://problem/33665676>
Reviewed by Alexey Proskuryakov.
Disable URLSchemeHandler.Leaks1 API test on iOS as it sometimes times out.
- TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-leaks.mm:
(TEST):
- 8:55 AM Changeset in webkit [227272] by
-
- 7 edits2 adds in trunk
Release ASSERT when reloading Vimeo page @ WebCore: WebCore::Document::updateLayout
https://bugs.webkit.org/show_bug.cgi?id=181840
<rdar://problem/36186214>
Reviewed by Simon Fraser.
Source/WebCore:
Test: media/video-fullscreen-reload-crash.html
Short circuit play() or pause() operations if the document is suspended or stopped.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::playInternal):
(WebCore::HTMLMediaElement::pauseInternal):
Source/WebKit:
Updating layout while the document is suspended or stopped is unsafe.
- WebProcess/cocoa/VideoFullscreenManager.mm:
(WebKit::inlineVideoFrame):
LayoutTests:
- media/video-fullscreen-reload-crash-expected.txt: Added.
- media/video-fullscreen-reload-crash.html: Added.
- platform/ios/TestExpectations:
- 4:53 AM Changeset in webkit [227271] by
-
- 5 edits6 adds in trunk
[JSC] NumberPrototype::extractRadixFromArgs incorrectly cast double to int32_t
https://bugs.webkit.org/show_bug.cgi?id=181182
Reviewed by Darin Adler.
JSTests:
- stress/big-int-prototype-to-string-cast-overflow.js: Added.
- stress/big-int-prototype-to-string-exception.js: Added.
- stress/big-int-prototype-to-string-wrong-values.js: Added.
- stress/number-prototype-to-string-cast-overflow.js: Added.
- stress/number-prototype-to-string-exception.js: Added.
- stress/number-prototype-to-string-wrong-values.js: Added.
Source/JavaScriptCore:
Casting double to integer is undefined behavior when the truncation
results into a value that doesn't fit into integer size,
according C++ spec[1]. Thus, we are changing bigIntProtoFuncToString and
numberProtoFuncToString to remove these source of undefined
behavior.
[1] - http://en.cppreference.com/w/cpp/language/implicit_conversion
- runtime/BigIntPrototype.cpp:
(JSC::bigIntProtoFuncToString):
- runtime/NumberPrototype.cpp:
(JSC::numberProtoFuncToString):
(JSC::extractToStringRadixArgument):
(JSC::extractRadixFromArgs): Deleted.
- runtime/NumberPrototype.h:
- 2:45 AM Changeset in webkit [227270] by
-
- 14 edits in trunk
fetch redirect is incompatible with "no-cors" mode
https://bugs.webkit.org/show_bug.cgi?id=181866
<rdar://problem/35827140>
Patch by Youenn Fablet <youenn@apple.com> on 2018-01-20
Reviewed by Chris Dumez.
LayoutTests/imported/w3c:
- web-platform-tests/fetch/api/redirect/redirect-mode-expected.txt:
- web-platform-tests/fetch/api/redirect/redirect-mode-worker-expected.txt:
- web-platform-tests/fetch/api/redirect/redirect-mode.js:
(redirectMode):
- web-platform-tests/service-workers/service-worker/fetch-event-redirect.https-expected.txt:
- web-platform-tests/service-workers/service-worker/fetch-event-redirect.https.html:
- web-platform-tests/service-workers/service-worker/fetch-request-redirect.https-expected.txt:
Source/WebCore:
Covered by updated tests.
Return a network error when no-cors mode and redirect mode is manual or error.
Update preflight implementation to no longer use manual redirect mode to simulate https://fetch.spec.whatwg.org/#http-network-or-cache-fetch.
Instead implement redirectReceived callback to treat any redirect response as the preflight response.
- loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::canRequest):
- loader/CrossOriginPreflightChecker.cpp:
(WebCore::CrossOriginPreflightChecker::redirectReceived):
(WebCore::CrossOriginPreflightChecker::startPreflight):
- loader/CrossOriginPreflightChecker.h:
LayoutTests:
- http/tests/fetch/redirectmode-and-preload-expected.txt:
- http/tests/fetch/redirectmode-and-preload.html:
- 2:43 AM Changeset in webkit [227269] by
-
- 2 edits in trunk/Source/WebKit
DOMCache data sometimes not properly removed when clearing data for a given origin
https://bugs.webkit.org/show_bug.cgi?id=181887
<rdar://problem/36671239>
Reviewed by Youenn Fablet.
- NetworkProcess/cache/CacheStorageEngine.cpp:
(WebKit::CacheStorage::Engine::clearCachesForOrigin):
This code was iterating through folders on disk, then reading the folder's origin
from the origin file on disk. Then, if the origin would match the one we want to
delete, it would regenerate the folder path using cachesRootPath(*folderOrigin).
I don't know how but on my machine, I was ended up in a state where the path
generated by cachesRootPath(*folderOrigin) differed from the actual folder path
we read the origin from (Likely a different salt?). To make the code more robust,
I updated the code to delete "folderPath", which is the path we read the origin
from.
- 12:42 AM Changeset in webkit [227268] by
-
- 2 edits in trunk/Tools
WebDriver: fix some nits that prevent running W3C tests on Mac
https://bugs.webkit.org/show_bug.cgi?id=181864
Reviewed by Carlos Garcia Campos.
- Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
(WebDriverW3CWebServer.init): _wsout needs to always be defined,
as we assume that the property exists later.
(WebDriverW3CWebServer.stop): If the temporary file doesn't
exist for some reason, the remove call will raise and exception.
Gracefully handle the case where the file isn't created due to
a problem/exception that happened elsewhere.
Jan 19, 2018:
- 11:45 PM Changeset in webkit [227267] by
-
- 2 edits in trunk/WebDriverTests
Unreviewed GTK+ gardening. Skip imported/w3c/webdriver/tests/sessions/new_session/response.py.
It's causing a crash in the driver process and affecting all other tests.
- TestExpectations.json:
- 11:24 PM Changeset in webkit [227266] by
-
- 3 edits in trunk/Source/WebCore
[macOS] [WK2] Drag location is computed incorrectly when dragging content from subframes
https://bugs.webkit.org/show_bug.cgi?id=181896
<rdar://problem/35479043>
Reviewed by Tim Horton.
In r218837, I packaged most of the information needed to start a drag into DragItem, which is propagated to the client layer
via the startDrag codepath. However, this introduced a bug in computing the event position and drag location in window
coordinates. Consider the case where we're determining the drag image offset for a dragged element in a subframe:
Before the patch, the drag location (which starts out in the subframe's content coordinates) would be converted to root view
coordinates, which would then be converted to mainframe content coordinates, which would then be converted to window coordinates
using the mainframe's view. After the patch, we carry out the same math until the last step, where we erroneously use the
_subframe's_ view to convert to window coordinates from content coordinates. This results in the position of the iframe relative
to the mainframe being accounted for twice.
To fix this, we simply use the main frame's view to convert from mainframe content coordinates to window coordinates while
computing the drag location. As for the event position in window coordinates, this is currently unused by any codepath in WebKit,
so we can just remove it altogether.
Since this bug only affects drag and drop in the macOS WebKit2 port, there's currently no way to test this. I'll be using
<https://bugs.webkit.org/show_bug.cgi?id=181898> to track adding test support for drag and drop on macOS WebKit2. Manually tested
dragging in both WebKit1 and WebKit2 on macOS. dragLocationInWindowCoordinates isn't used at all for iOS drag and drop.
- page/DragController.cpp:
(WebCore::DragController::doSystemDrag):
- platform/DragItem.h:
(WebCore::DragItem::encode const):
(WebCore::DragItem::decode):
- 10:40 PM Changeset in webkit [227265] by
-
- 3 edits3 adds in trunk
Expose Safe Browsing SPI
https://bugs.webkit.org/show_bug.cgi?id=181804
<rdar://problem/36626946>
Patch by Zach Li <zacharyli323@gmail.com> on 2018-01-19
Reviewed by Dan Bernstein.
If client is using Apple internal SDK, then we can just import the header; if not,
then we declare necessary symbols that client will need.
- Configurations/WebKit.xcconfig:
Only link against SafariSafeBrowsing framework on macOS High Sierra
and iOS 11 and above. Weak link against SafariSafeBrowsing framework
because it is not present on the Base system.
- Platform/spi/Cocoa/SafeBrowsingSPI.h: Added.
- WebKit.xcodeproj/project.pbxproj:
Added SafeBrowsingSPI.h.
- WebKitLibraries/WebKitPrivateFrameworkStubs/iOS/11/SafariSafeBrowsing.framework/SafariSafeBrowsing.tbd:
Added.
- 8:34 PM Changeset in webkit [227264] by
-
- 2 edits in trunk/LayoutTests
Mark imported/w3c/web-platform-tests/service-workers/service-worker/fetch-cors-xhr.https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=181901
Unreviewed test gardening.
- 8:21 PM Changeset in webkit [227263] by
-
- 2 edits in trunk/LayoutTests
Mark imported/w3c/web-platform-tests/service-workers/service-worker/fetch-canvas-tainting-cache.https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=181900
Unreviewed test gardening.
- 8:05 PM Changeset in webkit [227262] by
-
- 2 edits in trunk/LayoutTests
Mark imported/w3c/web-platform-tests/service-workers/service-worker/fetch-canvas-tainting.https.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=181897
Unreviewed test gardening.
- 7:55 PM Changeset in webkit [227261] by
-
- 6 edits3 deletes in trunk
Unreviewed, rolling out r227235.
The test for this change consistently times out on High
Sierra.
Reverted changeset:
"Support for preconnect Link headers"
https://bugs.webkit.org/show_bug.cgi?id=181657
https://trac.webkit.org/changeset/227235
- 7:50 PM Changeset in webkit [227260] by
-
- 4 edits2 adds in trunk/LayoutTests
[Sierra Debug WK2] ASSERTION FAILED: paymentCoordinator().supportsVersion(version)
https://bugs.webkit.org/show_bug.cgi?id=181833
Patch by Andy Estes <aestes@apple.com> on 2018-01-19
Reviewed by Youenn Fablet.
Moved the version 3 test into its own file that only runs on High Sierra and later.
- http/tests/ssl/applepay/ApplePayRequestShippingContactV3.https-expected.txt: Added.
- http/tests/ssl/applepay/ApplePayRequestShippingContactV3.https.html: Added.
- platform/mac-wk2/TestExpectations:
- 6:29 PM Changeset in webkit [227259] by
-
- 12 edits in branches/safari-605-branch/Source
Apply patch. rdar://problem/36654954
Update OS Version-based conditionals.
<rdar://problem/36654954>
Reviewed by Joseph Pecoraro.
Source/WebCore:
- editing/cocoa/HTMLConverter.mm: (_WebMessageDocumentClass):
- platform/graphics/cg/GraphicsContextCG.cpp:
- platform/graphics/cocoa/FontCacheCoreText.cpp:
- platform/mac/EventLoopMac.mm: (WebCore::EventLoop::cycle):
Source/WebCore/PAL:
- pal/spi/cf/CFNetworkSPI.h:
Source/WebKit:
- Platform/IPC/mac/ConnectionMac.mm: (IPC::AccessibilityProcessSuspendedNotification):
- UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::shouldLeakBoost):
- UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _dataForPreviewItemController:atPosition:type:]):
- WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeProcess):
Source/WTF:
- wtf/mac/DeprecatedSymbolsUsedBySafari.mm:
- wtf/spi/cocoa/NSMapTableSPI.h:
- 6:24 PM Changeset in webkit [227258] by
-
- 4 edits in trunk/Tools
Move Bingdings EWS and Webkitpy EWS queues to High Sierra on buildbot dashboard.
https://bugs.webkit.org/show_bug.cgi?id=181881
Reviewed by Alexey Proskuryakov.
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer):
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform.mac-os-x-elcapitan img.logo): Deleted.
- 5:58 PM Changeset in webkit [227257] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed build fix, removed unused lambda capture.
- UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
- 5:57 PM Changeset in webkit [227256] by
-
- 12 edits in tags/Safari-605.1.24.2/Source
Apply patch. rdar://problem/36654954
Update OS Version-based conditionals.
<rdar://problem/36654954>
Reviewed by Joseph Pecoraro.
Source/WebCore:
- editing/cocoa/HTMLConverter.mm: (_WebMessageDocumentClass):
- platform/graphics/cg/GraphicsContextCG.cpp:
- platform/graphics/cocoa/FontCacheCoreText.cpp:
- platform/mac/EventLoopMac.mm: (WebCore::EventLoop::cycle):
Source/WebCore/PAL:
- pal/spi/cf/CFNetworkSPI.h:
Source/WebKit:
- Platform/IPC/mac/ConnectionMac.mm: (IPC::AccessibilityProcessSuspendedNotification):
- UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::shouldLeakBoost):
- UIProcess/ios/WKContentViewInteraction.mm: (-[WKContentView _dataForPreviewItemController:atPosition:type:]):
- WebProcess/WebProcess.cpp: (WebKit::WebProcess::initializeProcess):
Source/WTF:
- wtf/mac/DeprecatedSymbolsUsedBySafari.mm:
- wtf/spi/cocoa/NSMapTableSPI.h:
- 5:50 PM Changeset in webkit [227255] by
-
- 2 edits in trunk/LayoutTests
Mark http/wpt/web-animations/timing-model/animation-effects/current-iteration.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=181888
Unreviewed test gardening.
- 5:47 PM Changeset in webkit [227254] by
-
- 7 edits in tags/Safari-605.1.24.2/Source
Versioning.
- 5:40 PM Changeset in webkit [227253] by
-
- 1 copy in tags/Safari-605.1.24.2
New tag.
- 5:13 PM Changeset in webkit [227252] by
-
- 7 edits in tags/Safari-605.1.24.1/Source
Versioning.
- 4:58 PM Changeset in webkit [227251] by
-
- 1 copy in tags/Safari-605.1.24.1
New tag.
- 4:16 PM Changeset in webkit [227250] by
-
- 2 edits in trunk/LayoutTests
Update TestExpectations for webrtc/video-mute.html.
https://bugs.webkit.org/show_bug.cgi?id=177501
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 4:16 PM Changeset in webkit [227249] by
-
- 2 edits in trunk/LayoutTests
Mark imported/w3c/web-platform-tests/media-source/mediasource-config-change-mp4-* tests as flaky.
https://bugs.webkit.org/show_bug.cgi?id=181565
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 4:10 PM Changeset in webkit [227248] by
-
- 2 edits in trunk/Source/WebKit
Resource Load Statistics: Remove unused calls to WebResourceLoadStatisticsStore:logTestingEvent() to fix API test
https://bugs.webkit.org/show_bug.cgi?id=181890
<rdar://problem/36674772>
Unreviewed API test fix.
- UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
- 3:37 PM Changeset in webkit [227247] by
-
- 4 edits in branches/safari-605-branch/Source/WebKit
Present WKFileUploadPanel on correct ViewController
https://bugs.webkit.org/show_bug.cgi?id=181884
<rdar://problem/35114892>
Reviewed by Tim Horton and Joseph Pecoraro
We should not be getting the main view controller directly, as done in
ValidationBubbleIOS. This will keep us from presenting on view controllers are
in the midst of being dismissed, etc, causing us to get into states where we lose
the ability to present the WKFileUploadPanel.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView viewControllerForPresentingFileUploadPanel:]):
- UIProcess/ios/forms/WKFileUploadPanel.h:
- UIProcess/ios/forms/WKFileUploadPanel.mm:
(fallbackViewController):
(-[WKFileUploadPanel _presentFullscreenViewController:animated:]):
- 3:35 PM Changeset in webkit [227246] by
-
- 2 edits in trunk/JSTests
Disable Atomics when SharedArrayBuffer isn’t enabled
https://bugs.webkit.org/show_bug.cgi?id=181572
Unreviewed test gardening.
- test262.yaml: Skip tests that fail after this change.
- 3:26 PM Changeset in webkit [227245] by
-
- 7 edits in trunk
Cache storage errors like Quota should trigger console messages
https://bugs.webkit.org/show_bug.cgi?id=181879
<rdar://problem/36669048>
Patch by Youenn Fablet <youenn@apple.com> on 2018-01-19
Reviewed by Chris Dumez.
Source/WebCore:
Covered by rebased test.
- Modules/cache/DOMCache.cpp:
(WebCore::DOMCache::retrieveRecords):
(WebCore::DOMCache::batchDeleteOperation):
(WebCore::DOMCache::batchPutOperation):
- Modules/cache/DOMCacheEngine.cpp:
(WebCore::DOMCacheEngine::errorToException):
(WebCore::DOMCacheEngine::logErrorAndConvertToException):
- Modules/cache/DOMCacheEngine.h:
- Modules/cache/DOMCacheStorage.cpp:
(WebCore::DOMCacheStorage::retrieveCaches):
(WebCore::DOMCacheStorage::doOpen):
(WebCore::DOMCacheStorage::doRemove):
LayoutTests:
- http/wpt/cache-storage/cache-quota.any-expected.txt:
- 3:18 PM Changeset in webkit [227244] by
-
- 6 edits1 add in trunk/Source/WebInspectorUI
Web Inspector: Layers tab should do away with popovers (if possible)
https://bugs.webkit.org/show_bug.cgi?id=181805
Reviewed by Matt Baker.
- Localizations/en.lproj/localizedStrings.js:
Remove superfluous colon from a string.
- UserInterface/Main.html:
- UserInterface/Views/LayerDetailsSidebarPanel.css:
- UserInterface/Views/Layers3DContentView.css: Added.
Remove popover styling from sidebar, add new file with similar styling for canvas overlay.
- UserInterface/Views/LayerDetailsSidebarPanel.js:
(WI.LayerDetailsSidebarPanel):
(WI.LayerDetailsSidebarPanel.prototype.selectNodeByLayerId):
(WI.LayerDetailsSidebarPanel.prototype._dataGridSelectedNodeChanged):
(WI.LayerDetailsSidebarPanel.prototype._updateLayers):
(WI.LayerDetailsSidebarPanel.prototype._updateBottomBar):
(WI.LayerDetailsSidebarPanel.prototype.willDismissPopover): Deleted.
(WI.LayerDetailsSidebarPanel.prototype._showPopoverForSelectedNode): Deleted.
(WI.LayerDetailsSidebarPanel.prototype._presentPopover): Deleted.
(WI.LayerDetailsSidebarPanel.prototype._contentForPopover): Deleted.
(WI.LayerDetailsSidebarPanel.prototype._populateListOfCompositingReasons.addReason): Deleted.
(WI.LayerDetailsSidebarPanel.prototype._populateListOfCompositingReasons): Deleted.
- UserInterface/Views/Layers3DContentView.js:
(WI.Layers3DContentView):
(WI.Layers3DContentView.prototype.shown):
(WI.Layers3DContentView.prototype.selectLayerById):
(WI.Layers3DContentView.prototype._canvasMouseDown):
(WI.Layers3DContentView.prototype._buildLayerInfoElement):
(WI.Layers3DContentView.prototype._updateLayerInfoElement):
(WI.Layers3DContentView.prototype._updateReasonsList):
Remove popover from sidebar table, overlay div with same data arrangement on top of the canvas.
Also reverse the fix from r226671 since the visualization is no longer unusable without the sidebar!
- 3:01 PM Changeset in webkit [227243] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Canvas Tab: Multiple "waiting for frames" messages displayed
https://bugs.webkit.org/show_bug.cgi?id=181865
<rdar://problem/36664737>
Reviewed by Devin Rousso.
- UserInterface/Views/CanvasContentView.js:
(WI.CanvasContentView.prototype._recordingStarted):
(WI.CanvasContentView.prototype._recordingStopped):
- 2:58 PM Changeset in webkit [227242] by
-
- 18 edits1 add in trunk
Do not go to the storage process when registering a service worker client if there is no service worker registered
https://bugs.webkit.org/show_bug.cgi?id=181740
<rdar://problem/36650400>
Patch by Youenn Fablet <youenn@apple.com> on 2018-01-19
Reviewed by Chris Dumez.
Source/WebCore:
Register a document as service worker client only if there is an existing service worker connection.
This allows not creating any connection if no service worker is registered.
Add internals API to test whether a service worker connection was created or not.
This is used by API tests that cover the changes.
- dom/Document.cpp:
(WebCore::Document::privateBrowsingStateDidChange): No need to create a service worker connection if client is not registered yet.
(WebCore::Document::setServiceWorkerConnection): No need to unregister/register if service worker connection is the same.
Similarly, if Document is to be destroyed or suspended, we should not register it.
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::commitData):
- testing/Internals.cpp:
(WebCore::Internals::hasServiceWorkerConnection):
- testing/Internals.h:
- testing/Internals.idl:
- workers/service/ServiceWorkerProvider.cpp:
(WebCore::ServiceWorkerProvider::registerServiceWorkerClients):
- workers/service/ServiceWorkerProvider.h:
Source/WebKit:
UIProcess notifies all web processes to register their service worker clients when spinning the service worker process.
Add private API to set the number of web processes for testing purposes.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool _setMaximumNumberOfProcesses:]):
- UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::establishWorkerContextConnectionToStorageProcess):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::registerServiceWorkerClients):
- WebProcess/WebProcess.h:
- WebProcess/WebProcess.messages.in:
Tools:
Add support for internals inside API tests.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/InjectInternals_Bundle.cpp: Added.
(TestWebKitAPI::InternalsInjectedBundleTest::InternalsInjectedBundleTest):
(TestWebKitAPI::InternalsInjectedBundleTest::initialize):
(TestWebKitAPI::InternalsInjectedBundleTest::didCreatePage):
(TestWebKitAPI::InternalsInjectedBundleTest::didClearWindowForFrame):
- TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
(setConfigurationInjectedBundlePath):
(-[RegularPageMessageHandler userContentController:didReceiveScriptMessage:]):
- 2:53 PM Changeset in webkit [227241] by
-
- 7 edits in tags/Safari-606.1.2.1/Source
Versioning.
- 2:48 PM Changeset in webkit [227240] by
-
- 14 edits1 copy in trunk
REGRESSION (r221092): Swipe actions are hard to perform in FastMail app
https://bugs.webkit.org/show_bug.cgi?id=181817
<rdar://problem/35274055>
Source/WebCore:
Add a setting for controlling whether touch listeners are passive
by default on document/window/body.
Updated existing test.
- dom/EventTarget.cpp:
(WebCore::EventTarget::addEventListener):
- page/Settings.yaml:
Source/WebKit:
Reviewed by Simon Fraser.
Add a linked-on-or-after check to set passive touch listeners on document in WebCore.
- CMakeLists.txt:
- Shared/WebPreferences.yaml:
- Shared/WebPreferencesDefaultValues.cpp: Copied from Source/WebKit/UIProcess/Cocoa/VersionChecks.h.
(defaultPassiveTouchListenersAsDefaultOnDocument):
- Shared/WebPreferencesDefaultValues.h:
- UIProcess/Cocoa/VersionChecks.h:
- WebKit.xcodeproj/project.pbxproj:
Source/WebKitLegacy/mac:
Reviewed by Simon Fraser.
Add a linked-on-or-after check to set passive touch listeners on document in WebCore.
- Misc/WebKitVersionChecks.h:
- WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:]):
LayoutTests:
Reviewed by Simon Fraser.
- fast/events/touch/ios/passive-by-default-on-document-and-window-expected.txt:
- 2:43 PM Changeset in webkit [227239] by
-
- 1 copy in tags/Safari-606.1.2.1
New tag.
- 2:43 PM Changeset in webkit [227238] by
-
- 4 edits4 adds in trunk
Update frame-ancestor directive to match Content Security Policy Level 3
https://bugs.webkit.org/show_bug.cgi?id=178891
<rdar://problem/35209458>
Reviewed by Alex Christensen.
Derived from Blink e667cc2e501fabab3605b838e4ee0d642a9c4a59:
<https://chromium.googlesource.com/chromium/src.git/+/e667cc2e501fabab3605b838e4ee0d642a9c4a59>
Source/WebCore:
Update frame-ancestor directive to match against the origin of the ancestor document per the
Content Security Policy Level 3 spec.: <https://w3c.github.io/webappsec-csp/> (15 January 2018).
Specifically this change in behavior was made to CSP 3 in <https://github.com/w3c/webappsec/issues/311>.
In earlier versions of the spec, the frame-ancestor directive matched against the URL of the
ancestor document.
Disregarding allow-same-origin sandboxed iframes, a document with policy "frame-ancestor 'self'"
will be blocked from loading in a sandboxed iframe as a result of this change.
Tests: http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-allow-same-origin-sandboxed-cross-url-allow.html
http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-sandboxed-cross-url-block.html
- page/csp/ContentSecurityPolicyDirectiveList.cpp:
(WebCore::checkFrameAncestors):
LayoutTests:
- http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-allow-same-origin-sandboxed-cross-url-allow-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-allow-same-origin-sandboxed-cross-url-allow.html: Added.
- http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-sandboxed-cross-url-block-expected.txt: Added.
- http/tests/security/contentSecurityPolicy/1.1/frame-ancestors/frame-ancestors-nested-cross-in-sandboxed-cross-url-block.html: Added.
- http/tests/security/contentSecurityPolicy/resources/frame-ancestors-test.js:
(injectNestedIframe):
(window.onload):
(testNestedIFrame):
- 2:33 PM Changeset in webkit [227237] by
-
- 7 edits in trunk/Source/WebCore
[Curl] Add timeout support to XMLHttpRequest
https://bugs.webkit.org/show_bug.cgi?id=181876
Patch by Basuke Suzuki <Basuke Suzuki> on 2018-01-19
Reviewed by Alex Christensen
- platform/network/ResourceRequestBase.cpp:
- platform/network/curl/CurlContext.cpp:
(WebCore::CurlHandle::setTimeout):
- platform/network/curl/CurlContext.h:
- platform/network/curl/CurlRequest.cpp:
(WebCore::CurlRequest::setupTransfer):
(WebCore::CurlRequest::didCompleteTransfer):
- platform/network/curl/ResourceError.h:
- platform/network/curl/ResourceErrorCurl.cpp:
(WebCore::ResourceError::httpError):
- 2:30 PM Changeset in webkit [227236] by
-
- 3 edits1 add in trunk
Kill ArithNegate's ArithProfile assert inside BytecodeParser
https://bugs.webkit.org/show_bug.cgi?id=181877
<rdar://problem/36630552>
Reviewed by Mark Lam.
JSTests:
- stress/arith-profile-for-negate-can-see-non-number-due-to-dfg-osr-exit-profiling.js: Added.
(runNearStackLimit):
(f1):
(f2):
(f3):
(i.catch):
(i.try.runNearStackLimit):
(catch):
Source/JavaScriptCore:
Before this patch, we used to assert that op_negate's result ArithProfile
only produces number. It's logically true that negate only produces a number.
However, the DFG may incorrectly pick this ArithProfile when doing OSR exit
profiling. So we'll end up profiling something that's likely the input to
negate. This patch removes the assert. We cede to the fact that Graph::methodOfGettingAValueProfileFor
is entirely heuristic based, potentially leading to profiling results being imprecise.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::makeSafe):
- 2:16 PM Changeset in webkit [227235] by
-
- 6 edits4 adds in trunk
Support for preconnect Link headers
https://bugs.webkit.org/show_bug.cgi?id=181657
Reviewed by Darin Adler.
Source/WebCore:
Move the preconnect functionality into its own function, and
also call this function when Link headers are processed.
Test: http/tests/preconnect/link-header-rel-preconnect-http.php
- loader/LinkLoader.cpp:
(WebCore::LinkLoader::loadLinksFromHeader): Call preconnectIfNeeded.
(WebCore::LinkLoader::preconnectIfNeeded): Preconnect to a host functionality moved here.
(WebCore::LinkLoader::loadLink): Call preconnectIfNeeded.
- loader/LinkLoader.h:
LayoutTests:
Add test to see Link preconnect headers trigger a connection.
- http/tests/preconnect/link-header-rel-preconnect-http-expected.txt: Added.
- http/tests/preconnect/link-header-rel-preconnect-http.html: Added.
- http/tests/preconnect/resources/header-preconnect.php: Added.
- platform/ios-simulator/TestExpectations: Skipped the test, as ios-simulator doesn't process Link headers for subresources.
- platform/win/TestExpectations: Skipped the preconnect test directory, as it doesn't work on Windows.
- 2:12 PM Changeset in webkit [227234] by
-
- 3 edits in trunk/Websites/perf.webkit.org
Should allow updating a build-request to 'canceled'.
https://bugs.webkit.org/show_bug.cgi?id=181819
Reviewed by Ryosuke Niwa.
It's possible syncing script update a build-request to 'canceled' state.
- public/api/build-requests.php: Added 'canceled' as an acceptable update state.
- server-tests/api-build-requests-tests.js: Added a unit test to update a build-request to 'canceled'.
- 1:48 PM Changeset in webkit [227233] by
-
- 2 edits in trunk/Source/JavaScriptCore
oss-fuzz jsc build is broken: StringImpl.h:27:10: fatal error: 'unicode/ustring.h' file not found
<https://webkit.org/b/181871>
Rubber-stamped by JF Bastien.
- CMakeLists.txt: Add ICU header search path to
LLIntOffsetsExtractor target by reusing
JavaScriptCore_SYSTEM_INCLUDE_DIRECTORIES.
- 1:36 PM Changeset in webkit [227232] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Styles Redesign: tabbing on commented out property throws exception
https://bugs.webkit.org/show_bug.cgi?id=180676
<rdar://problem/35981058>
Reviewed by Joseph Pecoraro.
- UserInterface/Views/SpreadsheetCSSStyleDeclarationEditor.js:
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.startEditingFirstProperty):
Tabbing from the selector field should focus on the first editable property.
When no editable properties are present, a new blank property should be added after the commented out ones.
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.startEditingLastProperty):
Shift-tabbing from the selector field should focus on the last editable property of the previous CSS rule.
When no editable properties are present, a new blank property should be added after the commented out ones.
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype.spreadsheetCSSStyleDeclarationEditorFocusMoved):
When navigating between properties skip the commented out ones.
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype._editablePropertyAfter):
(WI.SpreadsheetCSSStyleDeclarationEditor.prototype._editablePropertyBefore):
- UserInterface/Views/SpreadsheetStyleProperty.js:
(WI.SpreadsheetStyleProperty.prototype.get enabled):
(WI.SpreadsheetStyleProperty.prototype._update):
- 1:22 PM Changeset in webkit [227231] by
-
- 2 edits in trunk/Source/WebKit
[Cocoa] _WKNSWindowExtras.h: Add missing availability annotation
https://bugs.webkit.org/show_bug.cgi?id=181868
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2018-01-19
Reviewed by Dan Bernstein.
- Shared/API/Cocoa/_WKNSWindowExtras.h:
- 1:19 PM Changeset in webkit [227230] by
-
- 2 edits in trunk/Source/WTF
Fix jsc-only build
https://bugs.webkit.org/show_bug.cgi?id=181874
Patch by Alex Christensen <achristensen@webkit.org> on 2018-01-19
Reviewed by JF Bastien.
This makes "build-webkit --jsc-only" work on Mac!
- wtf/PlatformJSCOnly.cmake:
- 1:15 PM Changeset in webkit [227229] by
-
- 4 edits2 adds in trunk
Spread's effects are modeled incorrectly both in AI and in Clobberize
https://bugs.webkit.org/show_bug.cgi?id=181867
<rdar://problem/36290415>
Reviewed by Michael Saboff.
JSTests:
- stress/ai-needs-to-model-spreads-effects.js: Added.
(try.p.Symbol.iterator):
(try.go):
(catch):
- stress/clobberize-needs-to-model-spread-effects.js: Added.
(assert):
(foo):
(a.Symbol.iterator):
Source/JavaScriptCore:
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- 12:13 PM Changeset in webkit [227228] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Make styles sidebar always LTR
https://bugs.webkit.org/show_bug.cgi?id=175357
<rdar://problem/33787988>
Reviewed by Joseph Pecoraro.
- UserInterface/Views/SpreadsheetRulesStyleDetailsPanel.js:
(WI.SpreadsheetRulesStyleDetailsPanel):
- 12:11 PM Changeset in webkit [227227] by
-
- 2 edits in trunk/Source/WebKit
Resource Load Statistics: Add void to argument list to fix build with -Wstrict-prototypes
https://bugs.webkit.org/show_bug.cgi?id=181870
<rdar://problem/36666750>
Unreviewed build fix.
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
- 12:04 PM Changeset in webkit [227226] by
-
- 2 edits in trunk/Source/ThirdParty/libwebrtc
Follow-up build fix for r227206.
Unreviewed.
- Source/webrtc/sdk/objc/Framework/Classes/VideoProcessing/VideoProcessingSoftLink.h:
Avoid duplicate and different definitions of ALWAYS_INLINE.
- 11:54 AM Changeset in webkit [227225] by
-
- 94 edits in trunk
AppCache: Log a Deprecation warning to the Console when AppCache is used
https://bugs.webkit.org/show_bug.cgi?id=181778
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2018-01-19
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
- web-platform-tests/html/browsers/offline/appcache/workers/appcache-worker-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_cached-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_checking-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_noupdate-expected.txt:
- web-platform-tests/html/browsers/offline/introduction-4/event_progress-expected.txt:
- web-platform-tests/html/browsers/offline/manifest_url_check-expected.txt:
- web-platform-tests/service-workers/service-worker/appcache-ordering-main.https-expected.txt:
Source/WebCore:
- html/HTMLHtmlElement.cpp:
(WebCore::HTMLHtmlElement::insertedByParser):
LayoutTests:
- http/tests/appcache/404-manifest-expected.txt:
- http/tests/appcache/404-resource-expected.txt:
- http/tests/appcache/404-resource-with-slow-main-resource-expected.txt:
- http/tests/appcache/abort-cache-onchecking-expected.txt:
- http/tests/appcache/abort-cache-onchecking-manifest-404-expected.txt:
- http/tests/appcache/abort-cache-onchecking-resource-404-expected.txt:
- http/tests/appcache/abort-cache-ondownloading-expected.txt:
- http/tests/appcache/abort-cache-ondownloading-manifest-404-expected.txt:
- http/tests/appcache/abort-cache-ondownloading-resource-404-expected.txt:
- http/tests/appcache/abort-cache-onprogress-expected.txt:
- http/tests/appcache/access-via-redirect-expected.txt:
- http/tests/appcache/crash-when-navigating-away-then-back-expected.txt:
- http/tests/appcache/credential-url-expected.txt:
- http/tests/appcache/cyrillic-uri-expected.txt:
- http/tests/appcache/decide-navigation-policy-after-delay-expected.txt:
- http/tests/appcache/deferred-events-delete-while-raising-expected.txt:
- http/tests/appcache/deferred-events-delete-while-raising-timer-expected.txt:
- http/tests/appcache/deferred-events-expected.txt:
- http/tests/appcache/different-https-origin-resource-main-expected.txt:
- http/tests/appcache/different-origin-manifest-expected.txt:
- http/tests/appcache/different-scheme-expected.txt:
- http/tests/appcache/document-write-html-element-2-expected.txt:
- http/tests/appcache/empty-manifest-expected.txt:
- http/tests/appcache/fail-on-update-2-expected.txt:
- http/tests/appcache/fail-on-update-expected.txt:
- http/tests/appcache/fallback-expected.txt:
- http/tests/appcache/fallback-namespace-outside-manifest-path-expected.txt:
- http/tests/appcache/foreign-fallback-expected.txt:
- http/tests/appcache/foreign-iframe-main-expected.txt:
- http/tests/appcache/history-test-expected.txt:
- http/tests/appcache/idempotent-update-expected.txt:
- http/tests/appcache/identifier-test-expected.txt:
- http/tests/appcache/interrupted-update-expected.txt:
- http/tests/appcache/local-content-expected.txt:
- http/tests/appcache/main-resource-fallback-for-network-error-crash-expected.txt:
- http/tests/appcache/main-resource-hash-expected.txt:
- http/tests/appcache/main-resource-redirect-expected.txt:
- http/tests/appcache/manifest-containing-itself-expected.txt:
- http/tests/appcache/manifest-parsing-expected.txt:
- http/tests/appcache/manifest-redirect-2-expected.txt:
- http/tests/appcache/manifest-redirect-expected.txt:
- http/tests/appcache/manifest-with-empty-file-expected.txt:
- http/tests/appcache/max-size-expected.txt:
- http/tests/appcache/multi-fallback-expected.txt:
- http/tests/appcache/navigating-away-while-cache-attempt-in-progress-expected.txt:
- http/tests/appcache/non-html-expected.txt:
- http/tests/appcache/offline-access-expected.txt:
- http/tests/appcache/online-fallback-layering-expected.txt:
- http/tests/appcache/online-whitelist-expected.txt:
- http/tests/appcache/origin-delete-expected.txt:
- http/tests/appcache/origin-quota-continued-download-expected.txt:
- http/tests/appcache/origin-quota-continued-download-multiple-manifests-expected.txt:
- http/tests/appcache/origin-quota-expected.txt:
- http/tests/appcache/origin-usage-expected.txt:
- http/tests/appcache/origins-with-appcache-expected.txt:
- http/tests/appcache/progress-counter-expected.txt:
- http/tests/appcache/reload-expected.txt:
- http/tests/appcache/remove-cache-expected.txt:
- http/tests/appcache/resource-redirect-2-expected.txt:
- http/tests/appcache/resource-redirect-expected.txt:
- http/tests/appcache/simple-expected.txt:
- http/tests/appcache/simple-video-async-expected.txt:
- http/tests/appcache/simple-video-sync-expected.txt:
- http/tests/appcache/top-frame-1-expected.txt:
- http/tests/appcache/top-frame-2-expected.txt:
- http/tests/appcache/top-frame-3-expected.txt:
- http/tests/appcache/top-frame-4-expected.txt:
- http/tests/appcache/update-cache-expected.txt:
- http/tests/appcache/video-expected.txt:
- http/tests/appcache/whitelist-wildcard-expected.txt:
- http/tests/appcache/wrong-content-type-expected.txt:
- http/tests/appcache/wrong-signature-2-expected.txt:
- http/tests/appcache/wrong-signature-expected.txt:
- http/tests/appcache/x-frame-options-prevents-framing-expected.txt:
- http/tests/appcache/xhr-foreign-resource-expected.txt:
- http/tests/contentfiltering/load-substitute-data-from-appcache-expected.txt:
- http/tests/security/appcache-switching-private-browsing-expected.txt:
- http/tests/security/cross-origin-appcache-allowed-expected.txt:
- http/tests/security/cross-origin-appcache-expected.txt:
- http/tests/security/same-origin-appcache-blocked-expected.txt:
- http/tests/ssl/upgrade-origin-usage-expected.txt:
- 11:47 AM Changeset in webkit [227224] by
-
- 4 edits2 deletes in trunk
Unreviewed, rolling out r227211.
Breaks iOS Simulator tests.
Reverted changeset:
"Expose Safe Browsing SPI"
https://bugs.webkit.org/show_bug.cgi?id=181804
https://trac.webkit.org/changeset/227211
- 11:26 AM Changeset in webkit [227223] by
-
- 20 edits in trunk
Resource Load Statistics: Implement callback support for removal of WebsiteDataType::ResourceLoadStatistics
https://bugs.webkit.org/show_bug.cgi?id=181822
https://bugs.webkit.org/show_bug.cgi?id=175263
https://bugs.webkit.org/show_bug.cgi?id=178536
https://bugs.webkit.org/show_bug.cgi?id=181223
https://bugs.webkit.org/show_bug.cgi?id=181482
<rdar://problem/33491222>
<rdar://problem/33805293>
<rdar://problem/36332683>
<rdar://problem/36549026>
Reviewed by Alex Christensen.
Source/WebKit:
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreStatisticsClearInMemoryAndPersistentStore):
(WKWebsiteDataStoreStatisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore _resourceLoadStatisticsClearInMemoryAndPersistentStore]):
Calls the new API with no-op completion handler.
(-[WKWebsiteDataStore _resourceLoadStatisticsClearInMemoryAndPersistentStore:]):
New API with completion handler.
(-[WKWebsiteDataStore _resourceLoadStatisticsClearInMemoryAndPersistentStoreModifiedSinceHours:]):
Calls the new API with no-op completion handler.
(-[WKWebsiteDataStore _resourceLoadStatisticsClearInMemoryAndPersistentStoreModifiedSinceHours:completionHandler:]):
New API with completion handler.
- UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
- UIProcess/ResourceLoadStatisticsPersistentStorage.cpp:
(WebKit::ResourceLoadStatisticsPersistentStorage::populateMemoryStoreFromDisk):
- UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::grandfatherExistingWebsiteData):
(WebKit::WebResourceLoadStatisticsStore::scheduleClearInMemoryAndPersistent):
- UIProcess/WebResourceLoadStatisticsStore.h:
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::removeData):
(WebKit::WebsiteDataStore::clearResourceLoadStatisticsInWebProcesses):
- UIProcess/WebsiteData/WebsiteDataStore.h:
Tools:
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
(WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::statisticsClearInMemoryAndPersistentStore):
(WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
LayoutTests:
- http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store-one-hour.html:
- http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store.html:
- http/tests/resourceLoadStatistics/grandfathering.html:
- platform/ios/TestExpectations:
Marked the three updated tests as [ Pass ].
- platform/mac-wk2/TestExpectations:
Marked the three updated tests as [ Pass ].
- 11:15 AM Changeset in webkit [227222] by
-
- 2 edits in trunk/Tools
run-webkit-tests fails when there is a curly brace in Xcode build output
https://bugs.webkit.org/show_bug.cgi?id=181254
<rdar://problem/36453374>
Reviewed by Daniel Bates.
- Scripts/webkitpy/port/base.py:
(Port._run_script): Encode script output before logging it.
- 11:13 AM Changeset in webkit [227221] by
-
- 6 edits in trunk/Source/WebCore
ASSERT(registration isTerminating()) hit in SWServerWorker::skipWaiting() https://bugs.webkit.org/show_bug.cgi?id=181761
<rdar://problem/36594564>
Reviewed by Youenn Fablet.
There is a short period of time, early in the registration process where a
SWServerWorker object exists for a registration but is not in the registration's
installing/waiting/active slots yet. As a result, if a registration is cleared
during this period (for e.g. due to the user clearing all website data), that
SWServerWorker will not be terminated. We then hit assertion later on when this
worker is trying to do things (like call skipWaiting).
To address the issue, we now keep a reference this SWServerWorker on the
registration, via a new SWServerRegistration::m_preInstallationWorker data member.
When the registration is cleared, we now take care of terminating this worker.
No new tests, covered by existing tests that crash flakily in debug builds.
- workers/WorkerThread.cpp:
(WebCore::WorkerThread::stop):
if the mutex is locked, then the worker thread is still starting. We spin the
runloop and try to stop again later. This avoids the deadlock shown in
Bug 181763 as the worker thread may need to interact with the main thread
during startup.
- workers/service/server/SWServer.cpp:
(WebCore::SWServer::installContextData):
- workers/service/server/SWServerJobQueue.cpp:
(WebCore::SWServerJobQueue::scriptContextFailedToStart):
(WebCore::SWServerJobQueue::install):
- workers/service/server/SWServerRegistration.cpp:
(WebCore::SWServerRegistration::~SWServerRegistration):
(WebCore::SWServerRegistration::setPreInstallationWorker):
(WebCore::SWServerRegistration::clear):
- workers/service/server/SWServerRegistration.h:
(WebCore::SWServerRegistration::preInstallationWorker const):
- 11:13 AM Changeset in webkit [227220] by
-
- 5 edits in trunk
Service worker registrations restored from disk may not be reused when the JS calls register() again
https://bugs.webkit.org/show_bug.cgi?id=181810
<rdar://problem/36591711>
Reviewed by Youenn Fablet.
Source/WebCore:
The issue was that when restoring a registration from disk, we would not set its active worker right
away. We only set it later in installContextData(). installContextData() is only called after we’ve
launched the service worker process and established a connection to it.
However, we would start processing jobs (such as registrations) before we’ve established the connection
to the service worker process. SWServerJobQueue::runRegisterJob(), in order to reuse an existing
registration checks the registration’s active worker has the right script URL. The issue was that when
this code would execute, we may not have set the registration’s active service worker yet, in which case,
we would update the existing registration instead of reusing it as-is.
To address the issue, we now delay the processing of jobs until the connection to the service worker
process has been established and we've installed all pending contexts via installContextData().
Changed is covered by new API test.
- workers/service/server/SWServer.cpp:
(WebCore::SWServer::Connection::scheduleJobInServer):
(WebCore::SWServer::scheduleJob):
(WebCore::SWServer::serverToContextConnectionCreated):
- workers/service/server/SWServer.h:
Tools:
Add API test coverage.
- TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
(-[SWMessageHandlerForRestoreFromDiskTest initWithExpectedMessage:]):
(-[SWMessageHandlerForRestoreFromDiskTest userContentController:didReceiveScriptMessage:]):
- 11:12 AM Changeset in webkit [227219] by
-
- 6 edits in trunk
AX: when invert colors is on, double-invert image and picture elements in UserAgentStyleSheet
https://bugs.webkit.org/show_bug.cgi?id=181281
<rdar://problem/36291776>
Reviewed by Simon Fraser.
Source/WebCore:
Updated "Smart Invert" to include img and picture element inversion and tests.
Tests: accessibility/smart-invert-reference.html
accessibility/smart-invert.html
- css/html.css:
(@media (inverted-colors)):
(img:not(picture>img), picture, video):
LayoutTests:
Updated to include img and picture element tests.
- accessibility/smart-invert-expected.txt:
- accessibility/smart-invert-reference-expected.html:
- accessibility/smart-invert.html:
- 11:02 AM Changeset in webkit [227218] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION (r223149): Ref WebPageProxy objects before calling their functionality
https://bugs.webkit.org/show_bug.cgi?id=181863
<rdar://problem/36662452>
Reviewed by Chris Dumez.
More fix ups following r223149. When notifying all pages of a process state change we need to
take care to ref all the pages before iterating over them and notifying them of the change.
Notifying a page of such a state change may ultimately delegate to the embedding client. And
the embedding client can do anything, including deallocating one or more pages.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didBecomeUnresponsive):
(WebKit::WebProcessProxy::didBecomeResponsive):
(WebKit::WebProcessProxy::willChangeIsResponsive):
(WebKit::WebProcessProxy::didChangeIsResponsive):
(WebKit::WebProcessProxy::requestTermination):
- 10:51 AM Changeset in webkit [227217] by
-
- 2 edits in trunk/Tools
Remove El Capitan queues from flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=181860
Reviewed by Aakash Jain.
- TestResultServer/static-dashboards/builders.jsonp:
- 10:38 AM Changeset in webkit [227216] by
-
- 21 edits2 adds in trunk
The WebContent process should not process incoming IPC while waiting for a sync IPC reply
https://bugs.webkit.org/show_bug.cgi?id=181560
Reviewed by Ryosuke Niwa.
Source/WebCore:
Add internals API for testing purposes.
Test: fast/misc/testIncomingSyncIPCMessageWhileWaitingForSyncReply.html
- page/ChromeClient.h:
- testing/Internals.cpp:
(WebCore::Internals::testIncomingSyncIPCMessageWhileWaitingForSyncReply):
- testing/Internals.h:
- testing/Internals.idl:
Source/WebKit:
The WebContent process should not process incoming IPC while waiting for a sync IPC reply.
This is causing hard-to-debug crashes because developers often assume the state does not
change during a sendSync() call.
- Platform/IPC/Connection.cpp:
(IPC::Connection::waitForSyncReply):
- Platform/IPC/Connection.h:
(IPC::Connection::setShouldProcessIncomingMessagesWhileWaitingForSyncReply):
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::testIncomingSyncIPCMessageWhileWaitingForSyncReply):
- UIProcess/WebProcessProxy.h:
- UIProcess/WebProcessProxy.messages.in:
- WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::NetworkProcessConnection):
- WebProcess/Storage/WebToStorageProcessConnection.cpp:
(WebKit::WebToStorageProcessConnection::WebToStorageProcessConnection):
- WebProcess/WebConnectionToUIProcess.cpp:
(WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::testIncomingSyncIPCMessageWhileWaitingForSyncReply):
- WebProcess/WebCoreSupport/WebChromeClient.h:
- WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::undo):
(WebKit::WebEditorClient::redo):
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::syncIPCMessageWhileWaitingForSyncReplyForTesting):
- WebProcess/WebProcess.h:
- WebProcess/WebProcess.messages.in:
LayoutTests:
Add layout test coverage.
- fast/misc/testIncomingSyncIPCMessageWhileWaitingForSyncReply-expected.txt: Added.
- fast/misc/testIncomingSyncIPCMessageWhileWaitingForSyncReply.html: Added.
- 10:33 AM Changeset in webkit [227215] by
-
- 17 edits in trunk
HaveInternalSDK includes should be "#include?"
https://bugs.webkit.org/show_bug.cgi?id=179670
Reviewed by Dan Bernstein.
Source/bmalloc:
- Configurations/Base.xcconfig:
Source/JavaScriptCore:
- Configurations/Base.xcconfig:
Source/WebCore:
- Configurations/Base.xcconfig:
Source/WebInspectorUI:
- Configurations/Base.xcconfig:
Source/WebKit:
- Configurations/Base.xcconfig:
Source/WTF:
- Configurations/Base.xcconfig:
Tools:
- MiniBrowser/Configurations/Base.xcconfig:
- MobileMiniBrowser/Configurations/Base.xcconfig:
- TestWebKitAPI/Configurations/Base.xcconfig:
- WebKitTestRunner/Configurations/Base.xcconfig:
- 10:32 AM Changeset in webkit [227214] by
-
- 9 edits in trunk/Source
Fix misspelling; substitute willDetachRenderer for willDetatchRenderer.
Source/WebCore:
- html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::willDetachRenderers):
- plugins/PluginViewBase.h:
(WebCore::PluginViewBase::willDetachRenderer):
(WebCore::PluginViewBase::willDetatchRenderer): Deleted.
Source/WebKit:
- WebProcess/Plugins/PDF/PDFPlugin.h:
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::willDetachRenderer):
(WebKit::PDFPlugin::willDetatchRenderer): Deleted.
- WebProcess/Plugins/Plugin.h:
(WebKit::Plugin::willDetachRenderer):
(WebKit::Plugin::willDetatchRenderer): Deleted.
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::willDetachRenderer):
(WebKit::PluginView::willDetatchRenderer): Deleted.
- WebProcess/Plugins/PluginView.h:
- 10:12 AM Changeset in webkit [227213] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed build fix, remove unused lambda captures.
- dom/messageports/MessagePortChannel.cpp:
(WebCore::MessagePortChannel::takeAllMessagesForPort):
- dom/messageports/MessagePortChannelRegistry.cpp:
(WebCore::MessagePortChannelRegistry::messagePortChannelCreated):
- 10:09 AM Changeset in webkit [227212] by
-
- 2 edits in trunk/Source/WTF
Update XPCSPI.h
https://bugs.webkit.org/show_bug.cgi?id=181827
rdar://problem/36393031
Reviewed by Daniel Bates.
- wtf/spi/darwin/XPCSPI.h:
- 10:05 AM Changeset in webkit [227211] by
-
- 3 edits3 adds in trunk
Expose Safe Browsing SPI
https://bugs.webkit.org/show_bug.cgi?id=181804
<rdar://problem/36626946>
Patch by Zach Li <zacharyli323@gmail.com> on 2018-01-19
Reviewed by Alex Christensen.
If client is using Apple internal SDK, then we can just import the header; if not,
then we declare necessary symbols that client will need.
- Configurations/WebKit.xcconfig:
Only link against SafariSafeBrowsing framework on macOS High Sierra
and iOS 11 and above. Weak link against SafariSafeBrowsing framework
because it is not present on the Base system.
- Platform/spi/Cocoa/SafeBrowsingSPI.h: Added.
- WebKit.xcodeproj/project.pbxproj:
Added SafeBrowsingSPI.h.
- WebKitLibraries/WebKitPrivateFrameworkStubs/iOS/11/SafariSafeBrowsing.framework/SafariSafeBrowsing.tbd:
Added.
- 9:59 AM Changeset in webkit [227210] by
-
- 1 edit1 delete in trunk/LayoutTests
[Web Animations] Remove http/wpt/wk-web-animations tests
https://bugs.webkit.org/show_bug.cgi?id=181861
These tests were written early on during our Web Animations implementation before we had a good sense of the quality
of the coverage of the W3C WPT suite. That suite is extremely comprehensive and all of the assertions we wrote ourselves
are redundant and should be removed so that all testing, unless specific to our implementation, is done through the WPT
suite.
Reviewed by Dean Jackson.
- http/wpt/wk-web-animations/interfaces/document-get-animations-expected.txt: Removed.
- http/wpt/wk-web-animations/interfaces/document-get-animations.html: Removed.
- http/wpt/wk-web-animations/interfaces/element-get-animations-expected.txt: Removed.
- http/wpt/wk-web-animations/interfaces/element-get-animations.html: Removed.
- http/wpt/wk-web-animations/interfaces/keyframe-effect-getComputedStyle-expected.txt: Removed.
- http/wpt/wk-web-animations/interfaces/keyframe-effect-getComputedStyle.html: Removed.
- http/wpt/wk-web-animations/timing-model/animation-creation-basic-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/animation-creation-basic.html: Removed.
- http/wpt/wk-web-animations/timing-model/animation-current-time-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/animation-current-time.html: Removed.
- http/wpt/wk-web-animations/timing-model/animation-effect-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/animation-effect-timing-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/animation-effect-timing.html: Removed.
- http/wpt/wk-web-animations/timing-model/animation-effect-unique-relationship-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/animation-effect-unique-relationship.html: Removed.
- http/wpt/wk-web-animations/timing-model/animation-effect.html: Removed.
- http/wpt/wk-web-animations/timing-model/animation-interface-effect-property-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/animation-interface-effect-property.html: Removed.
- http/wpt/wk-web-animations/timing-model/animation-interface-start-time-property-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/animation-interface-start-time-property.html: Removed.
- http/wpt/wk-web-animations/timing-model/document-timeline-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/document-timeline.html: Removed.
- http/wpt/wk-web-animations/timing-model/keyframe-effect-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/keyframe-effect-interface-timing-duration-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/keyframe-effect-interface-timing-duration.html: Removed.
- http/wpt/wk-web-animations/timing-model/keyframe-effect.html: Removed.
- http/wpt/wk-web-animations/timing-model/timeline-current-time-expected.txt: Removed.
- http/wpt/wk-web-animations/timing-model/timeline-current-time.html: Removed.
- 9:58 AM Changeset in webkit [227209] by
-
- 4 edits in trunk/Source/WebKitLegacy/win
[Win] Compile error: 'WebKitQuartzCoreAdditionsBase.h' not found.
https://bugs.webkit.org/show_bug.cgi?id=181859
<rdar://problem/36659886>
Reviewed by Alex Christensen.
Use local include patch.
- WebKitQuartzCoreAdditions/API/WKCACFImage.h:
- WebKitQuartzCoreAdditions/API/WKCACFView.h:
- WebKitQuartzCoreAdditions/API/WKCACFViewPrivate.h:
- 9:56 AM Changeset in webkit [227208] by
-
- 40 edits3 copies in trunk
[Web Animations] Expose timing properties (delay, endDelay, fill, iterationStart, iterations, direction) and getComputedTiming()
https://bugs.webkit.org/show_bug.cgi?id=181857
<rdar://problem/36660081>
Reviewed by Dean Jackson.
Source/WebCore:
We start the work to implement the rest of the Web Animations timing and animation model by exposing more properties on
AnimationEffectTiming to control delay (delay, endDelay), looping (iterationStart, iterations), fill and direction.
Additionally, we expose the getComputedTiming() method on AnimationEffect, although it currently lacks some computed
properties that will come in later patch as we implement various processes defined by the spec. We also update the
existing duration() method on AnimationEffectTiming to be called iterationDuration() to match the terms used in the
specification.
Finally, we make all new properties, and update existing ones, that expose a time value go through the new utility
function secondsToWebAnimationsAPITime() to guarantee rounded values with microseconds precision, as advised by
the Web Animations specification.
- CMakeLists.txt:
- DerivedSources.make:
- Sources.txt:
- WebCore.xcodeproj/project.pbxproj:
- animation/AnimationEffect.cpp:
(WebCore::AnimationEffect::localTime const):
(WebCore::AnimationEffect::getComputedTiming):
- animation/AnimationEffect.h:
- animation/AnimationEffect.idl:
- animation/AnimationEffectTiming.cpp:
(WebCore::AnimationEffectTiming::AnimationEffectTiming):
(WebCore::AnimationEffectTiming::setIterationStart):
(WebCore::AnimationEffectTiming::setIterations):
(WebCore::AnimationEffectTiming::bindingsDuration const):
(WebCore::AnimationEffectTiming::setBindingsDuration):
(WebCore::AnimationEffectTiming::endTime const):
(WebCore::AnimationEffectTiming::activeDuration const):
- animation/AnimationEffectTiming.h:
- animation/AnimationEffectTiming.idl:
- animation/AnimationPlaybackEvent.cpp:
(WebCore::AnimationPlaybackEvent::bindingsCurrentTime const):
(WebCore::AnimationPlaybackEvent::bindingsTimelineTime const):
- animation/AnimationTimeline.cpp:
(WebCore::AnimationTimeline::bindingsCurrentTime):
- animation/ComputedTimingProperties.h: Added.
- animation/ComputedTimingProperties.idl: Added. We set nullable double values to a default value of "null" since
otherwise setting those properties to a null value would not set the properties in the converted JS dictionary.
- animation/KeyframeEffect.cpp:
(WebCore::KeyframeEffect::create): Handle new timing properties passed in the KeyframeEffectOptions dictionary.
(WebCore::KeyframeEffect::applyAtLocalTime):
(WebCore::KeyframeEffect::getAnimatedStyle):
(WebCore::KeyframeEffect::startOrStopAccelerated):
- animation/WebAnimation.cpp:
(WebCore::WebAnimation::bindingsStartTime const):
(WebCore::WebAnimation::bindingsCurrentTime const):
(WebCore::WebAnimation::effectEndTime const):
(WebCore::WebAnimation::timeToNextRequiredTick const):
- animation/WebAnimationUtilities.h: Added.
(WebCore::secondsToWebAnimationsAPITime):
LayoutTests:
Update expectations with progressions and new failure points now we expose more of the API.
- http/wpt/web-animations/animation-model/animation-types/discrete-animation-expected.txt:
- http/wpt/web-animations/interfaces/Animatable/animate-expected.txt:
- http/wpt/web-animations/interfaces/Animation/finish-expected.txt:
- http/wpt/web-animations/interfaces/Animation/finished-expected.txt:
- http/wpt/web-animations/interfaces/Animation/pause-expected.txt:
- http/wpt/web-animations/interfaces/Animation/play-expected.txt:
- http/wpt/web-animations/interfaces/AnimationEffectTiming/delay-expected.txt:
- http/wpt/web-animations/interfaces/AnimationEffectTiming/direction-expected.txt:
- http/wpt/web-animations/interfaces/AnimationEffectTiming/duration-expected.txt:
- http/wpt/web-animations/interfaces/AnimationEffectTiming/easing-expected.txt:
- http/wpt/web-animations/interfaces/AnimationEffectTiming/endDelay-expected.txt:
- http/wpt/web-animations/interfaces/AnimationEffectTiming/fill-expected.txt:
- http/wpt/web-animations/interfaces/AnimationEffectTiming/iterationStart-expected.txt:
- http/wpt/web-animations/interfaces/AnimationEffectTiming/iterations-expected.txt:
- http/wpt/web-animations/interfaces/AnimationTimeline/document-timeline-expected.txt:
- http/wpt/web-animations/timing-model/animation-effects/active-time-expected.txt:
- http/wpt/web-animations/timing-model/animation-effects/current-iteration-expected.txt:
- http/wpt/web-animations/timing-model/animation-effects/local-time-expected.txt:
- http/wpt/web-animations/timing-model/animation-effects/phases-and-states-expected.txt:
- http/wpt/web-animations/timing-model/animation-effects/simple-iteration-progress-expected.txt:
- http/wpt/web-animations/timing-model/animations/set-the-animation-start-time-expected.txt:
- http/wpt/web-animations/timing-model/animations/set-the-target-effect-of-an-animation-expected.txt:
- http/wpt/web-animations/timing-model/time-transformations/transformed-progress-expected.txt:
- http/wpt/wk-web-animations/timing-model/keyframe-effect-interface-timing-duration.html:
- 9:55 AM Changeset in webkit [227207] by
-
- 5 edits in trunk/Source/WebCore
Remove dead networking code
https://bugs.webkit.org/show_bug.cgi?id=181813
Patch by Alex Christensen <achristensen@webkit.org> on 2018-01-19
Reviewed by Tim Horton.
CFURLConnection is only used on Windows.
- platform/network/cf/ResourceError.h:
- platform/network/cf/ResourceRequest.h:
(WebCore::ResourceRequest::encodingRequiresPlatformData const):
- platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdatePlatformHTTPBody):
(WebCore::ResourceRequest::doUpdateResourceRequest):
(WebCore::ResourceRequest::setStorageSession):
- platform/network/cf/ResourceResponse.h:
(WebCore::ResourceResponse::ResourceResponse):
- 9:48 AM Changeset in webkit [227206] by
-
- 6 edits2 adds in trunk/Source/ThirdParty/libwebrtc
Softlink VideoProcessing in WebKit
https://bugs.webkit.org/show_bug.cgi?id=181853
<rdar://problem/36590005>
Patch by Youenn Fablet <youenn@apple.com> on 2018-01-19
Reviewed by Eric Carlson.
- Configurations/libwebrtc.xcconfig:
- Source/webrtc/sdk/objc/Framework/Classes/VideoProcessing/VideoProcessingSoftLink.cpp: Added.
- Source/webrtc/sdk/objc/Framework/Classes/VideoProcessing/VideoProcessingSoftLink.h: Added.
- Source/webrtc/sdk/objc/Framework/Classes/VideoProcessing/encoder_vcp.h:
- Source/webrtc/sdk/objc/Framework/Classes/VideoProcessing/encoder_vcp.mm:
(internal::SetVTSessionProperty):
(webrtc::H264VideoToolboxEncoderVCP::Encode):
- Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/videocodecfactory.mm:
(webrtc::VideoToolboxVideoEncoderFactory::VideoToolboxVideoEncoderFactory):
- libwebrtc.xcodeproj/project.pbxproj:
- 9:46 AM Changeset in webkit [227205] by
-
- 6 edits in trunk/Source
Remove unused WebViewPrivate _allowCookies
https://bugs.webkit.org/show_bug.cgi?id=181812
Patch by Alex Christensen <achristensen@webkit.org> on 2018-01-19
Reviewed by Tim Horton.
Source/WebCore:
This SPI was in the original iOS upstreaming and has not been used in many years.
- platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::setDefaultAllowCookies): Deleted.
(WebCore::ResourceRequestBase::defaultAllowCookies): Deleted.
- platform/network/ResourceRequestBase.h:
(WebCore::ResourceRequestBase::ResourceRequestBase):
Source/WebKitLegacy/mac:
- WebView/WebView.mm:
(+[WebView _setAllowCookies:]): Deleted.
(+[WebView _allowCookies]): Deleted.
- WebView/WebViewPrivate.h:
- 9:45 AM Changeset in webkit [227204] by
-
- 2 edits in trunk/LayoutTests
Mark http/tests/images/image-supports-video.html as flaky.
https://bugs.webkit.org/show_bug.cgi?id=181862
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 9:38 AM Changeset in webkit [227203] by
-
- 2 edits in trunk/LayoutTests
Update TestExpectations for media/W3C/audio/networkState/networkState_during_loadstart.html.
https://bugs.webkit.org/show_bug.cgi?id=123010
Unreviewed test gardening.
- platform/mac/TestExpectations:
- 9:12 AM Changeset in webkit [227202] by
-
- 3 edits in trunk/LayoutTests
Move select-out-of-floated-non-editable iOS Simulator expectations to iOS
Unreviewed test gardening.
r222317 introduced these test expectations. These expectations should apply to both
Simulator and device testing.
- platform/ios-simulator-wk2/TestExpectations:
- platform/ios-wk2/TestExpectations:
- 8:45 AM Changeset in webkit [227201] by
-
- 10 edits in trunk/LayoutTests
Use promises for basic-gestures.js and 'await' for the corresponding tests
https://bugs.webkit.org/show_bug.cgi?id=181841
Patch by Frederic Wang <fwang@igalia.com> on 2018-01-19
Reviewed by Megan Gardner.
- fast/events/touch/ios/drag-to-autoscroll-in-single-line-editable.html: Remove redundant
check for testRunner.runUIScript, rewrite runUIScript calls to just await a promise, add the
async keyword to runTest and reindent.
Also remove extraneous space after + operator.
- fast/events/touch/ios/long-press-then-drag-down-to-change-selected-text.html: Ditto.
- fast/events/touch/ios/long-press-then-drag-left-to-change-selected-text.html: Ditto.
- fast/events/touch/ios/long-press-then-drag-right-to-change-selected-text.html: Ditto.
- fast/events/touch/ios/long-press-then-drag-to-select-text.html: Ditto.
- fast/events/touch/ios/long-press-then-drag-up-to-change-selected-text.html: Ditto.
- fast/events/touch/ios/long-press-to-select-and-tap-to-clear.html: Ditto.
- fast/events/touch/ios/long-press-to-select-text.html: Ditto.
- resources/basic-gestures.js: For all functions in this file, wrap the script source into a
runUIScript call and a new promise, reindent.
- 8:21 AM Changeset in webkit [227200] by
-
- 2 edits in trunk/LayoutTests
Mark svg/filters/feDiffuseLighting-bottomRightPixel.html as failing on Windows.
https://bugs.webkit.org/show_bug.cgi?id=181854
Unreviewed test gardening.
- platform/win/TestExpectations:
- 8:10 AM Changeset in webkit [227199] by
-
- 2 edits in trunk/LayoutTests
[iOS] LayoutTest media/modern-media-controls/media-controller/ios/media-controller-ios-do-not-hide-controls-when-tapping-button.html fails on Internal bots
https://bugs.webkit.org/show_bug.cgi?id=181843
<rdar://problem/36061363>
The button we were trying to press was outside of the viewable screen area and so the tap wouldn't occur.
Resizing the video to fit in the window fixes the issue.
Reviewed by Youenn Fablet.
- media/modern-media-controls/media-controller/ios/media-controller-ios-do-not-hide-controls-when-tapping-button.html:
- 7:19 AM Changeset in webkit [227198] by
-
- 2 edits in trunk/Tools
WebDriver: driver environment not passed to pytest when running w3c tests
https://bugs.webkit.org/show_bug.cgi?id=181852
Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2018-01-19
Reviewed by Carlos Alberto Lopez Perez.
That's why color codes are not used in the bots log for selenium tests but they appear in w3c tests.
- Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
(WebDriverW3CExecutor.run):
- 6:19 AM Changeset in webkit [227197] by
-
- 2 edits in trunk/Tools
[GTK] WebDriver: wayland display no used in wayland bot
https://bugs.webkit.org/show_bug.cgi?id=181851
Reviewed by Carlos Alberto Lopez Perez.
We need to handle the additionalArguments property in the WebDriverTests step.
- BuildSlaveSupport/build.webkit.org-config/steps.py:
(RunWebDriverTests.start):
- 5:06 AM Changeset in webkit [227196] by
-
- 2 edits in trunk/JSTests
Unreviewed, reduce count of iteration to fix timing out debug JSC test
https://bugs.webkit.org/show_bug.cgi?id=181535
- stress/inserted-recovery-with-set-last-index.js:
- 4:22 AM Changeset in webkit [227195] by
-
- 2 edits in trunk/Tools
[GTK] TERM environment variable is not passed to the test driver.
https://bugs.webkit.org/show_bug.cgi?id=181847
Rubber-stamped by by Carlos Garcia Campos.
- Scripts/webkitpy/port/base.py:
(Port.to.setup_environ_for_server):
- 3:54 AM Changeset in webkit [227194] by
-
- 2 edits in trunk/Tools
WebDriver: run-webdriver-tests is crashing in the bots when creating results json file
https://bugs.webkit.org/show_bug.cgi?id=181844
Reviewed by Carlos Alberto Lopez Perez.
We always try to create the directory where to store the json file, but when the filename is given directly,
like in the bots, the current dir is used.
- Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
(WebDriverTestRunner.dump_results_to_json_file): Do not try to create the directory if dirname() returns an
empty string.
- 1:58 AM Changeset in webkit [227193] by
-
- 2 edits in trunk/Tools
[GTK] WebDriver tests are running outside the jhbuild env
https://bugs.webkit.org/show_bug.cgi?id=181842
Reviewed by Žan Doberšek.
We need to enter jhbuild env in run-webdriver-tests.
- Scripts/run-webdriver-tests: