Timeline
Apr 15, 2017:
- 11:24 PM Changeset in webkit [215398] by
-
- 2 edits in trunk/Source/WebCore
Fix Windows build after r215396.
https://bugs.webkit.org/show_bug.cgi?id=170828
- platform/graphics/win/FontPlatformDataWin.cpp:
(WebCore::FontPlatformData::openTypeTable):
- 7:40 PM Changeset in webkit [215397] by
-
- 5 edits in trunk/Source/WebKit2
Include resource size in some existing logging
https://bugs.webkit.org/show_bug.cgi?id=170866
Reviewed by Alex Christensen.
In order to correlate resource load times with resource size, we log
when the resource is starting to be loaded and when the resource is
finished loading. In NetworkResourceLoader::didReceiveResponse, we
also log the expected resource length. However, we can only log the
length if it is provided in Content-Length, which is not always the
case. If it's not provided, we end up logging "length = -1". To make
up for this, change NetworkResourceLoader::didFinishLoading and
WebResourceLoader:: didFinishLoading to log the length once we know
it.
- NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::didReceiveBuffer):
(WebKit::NetworkResourceLoader::didFinishLoading):
- NetworkProcess/NetworkResourceLoader.h:
- WebProcess/Network/WebResourceLoader.cpp:
(WebKit::WebResourceLoader::didReceiveData):
(WebKit::WebResourceLoader::didFinishResourceLoad):
- WebProcess/Network/WebResourceLoader.h:
- 5:09 PM Changeset in webkit [215396] by
-
- 5 edits in trunk/Source/WebCore
Remove unused SharedBuffer constructor
https://bugs.webkit.org/show_bug.cgi?id=170828
Reviewed by Brady Eidson.
- platform/SharedBuffer.cpp:
(WebCore::SharedBuffer::append):
- platform/SharedBuffer.h:
(WebCore::SharedBuffer::create):
- platform/graphics/freetype/FontPlatformDataFreeType.cpp:
(WebCore::FontPlatformData::openTypeTable):
- platform/graphics/win/FontPlatformDataWin.cpp:
(WebCore::FontPlatformData::openTypeTable):
- 3:44 PM Changeset in webkit [215395] by
-
- 10 edits in trunk
test262: test262/test/language/global-code/new.target-arrow.js
https://bugs.webkit.org/show_bug.cgi?id=170872
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2017-04-15
Reviewed by Saam Barati.
JSTests:
- stress/async-arrow-functions-lexical-new.target-binding.js:
(shouldThrowAsync): Deleted.
(shouldThrowAsync.async): Deleted.
This code should have thrown a SyntaxError. Instead it was throwing
a ReferenceError for the internal @newTargetLocal variable.
- stress/new-target-syntax-errors.js:
Cover the arrow function in global code cases.
- ChakraCore.yaml:
- ChakraCore/test/es6/globalLambdaNewTargetSyntaxError.baseline-jsc:
We now pass with an expected SyntaxError. Our error message is different.
- test262.yaml:
Source/JavaScriptCore:
- parser/Parser.cpp:
(JSC::Parser<LexerType>::Parser):
Mark the global code scope.
(JSC::Parser<LexerType>::parseMemberExpression):
If new.target is detected in an arrow function defined in global scope
throw a SyntaxError.
- parser/Parser.h:
(JSC::Scope::Scope):
(JSC::Scope::setIsGlobalCodeScope):
(JSC::Scope::isGlobalCodeScope):
Marker for a global code scope.
- parser/ParserModes.h:
(JSC::isModuleParseMode):
(JSC::isProgramParseMode):
(JSC::isProgramOrModuleParseMode):
Helper for detecting global code based on parse mode.
- 11:15 AM Changeset in webkit [215394] by
-
- 5 edits in trunk/Source/WebCore
Unreviewed, rolling out r215393.
https://bugs.webkit.org/show_bug.cgi?id=170876
breaks scrollable iframes on ios (Requested by anttik on
#webkit).
Reverted changeset:
"GraphicsLayerCA::recursiveCommitChanges should not descend
into subtrees without changes"
https://bugs.webkit.org/show_bug.cgi?id=170851
http://trac.webkit.org/changeset/215393
- 6:15 AM Changeset in webkit [215393] by
-
- 5 edits in trunk/Source/WebCore
GraphicsLayerCA::recursiveCommitChanges should not descend into subtrees without changes
https://bugs.webkit.org/show_bug.cgi?id=170851
Reviewed by Simon Fraser.
With lots of layers this can be very slow as it always traverses the entire layer tree.
For example GIF animations on tumblr.com trigger expensive commits where almost nothing changes.
This patch adds m_hasDescendantsWithUncommittedChanges bit to GraphicsLayerCA. With this
we can avoid descending to branches without changes when committing.
- platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::setVisibleAndCoverageRects):
Do all setting of m_uncommittedChanges bits via addUncommittedChanges function.
(WebCore::GraphicsLayerCA::recursiveCommitChanges):
Bail out if neither the current layer nor any of its descendants have any uncommited changes
and none of the ancestors had changes.
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
(WebCore::GraphicsLayerCA::ensureStructuralLayer):
(WebCore::GraphicsLayerCA::changeLayerTypeTo):
(WebCore::GraphicsLayerCA::addUncommittedChanges):
Set m_hasDescendantsWithUncommittedChanges bit in ancestors when mutating m_uncommittedChanges.
(WebCore::GraphicsLayerCA::noteLayerPropertyChanged):
- platform/graphics/ca/GraphicsLayerCA.h:
(WebCore::RenderLayerCompositor::frameViewDidScroll):
Tell the scrolling layer that it needs to recompute coverage.
This also schedules a layer flush so no need to do that separately.
- 2:37 AM Changeset in webkit [215392] by
-
- 22 edits in trunk/Source
[WK2] Support data interaction of files into file inputs
https://bugs.webkit.org/show_bug.cgi?id=170803
<rdar://problem/31286130>
Reviewed by Tim Horton.
Source/WebCore:
Adds remaining support to allow data interaction of files onto inputs of type file. See per-change annotations
for more details. Unit tests to be added in the next patch.
- platform/PasteboardStrategy.h:
- platform/PlatformPasteboard.h:
- platform/ios/AbstractPasteboard.h:
- platform/ios/PlatformPasteboardIOS.mm:
(WebCore::PlatformPasteboard::numberOfFiles):
- platform/ios/WebItemProviderPasteboard.mm:
Implements numberOfFiles by counting the number of item providers that may be represented as a file, which
includes all item providers that contain at least one content UTI type.
(-[WebItemProviderPasteboard numberOfFiles]):
Adds boilerplate plumbing to fetch the number of files available on the pasteboard. On Mac, logic that
previously existed in DragData::numberOfFiles to query the number of files available in the pasteboard is now
on PlatformPasteboard instead, which both makes the implementation of DragData::numberOfFiles platform-invariant,
and also saves us one synchronous IPC call to the UI process in the WebKit2 implementation.
- platform/mac/DragDataMac.mm:
(WebCore::DragData::containsFiles):
(WebCore::DragData::numberOfFiles):
(WebCore::DragData::asFilenames):
Add support for recognizing objects in the pasteboard that may be represented by files, and therefore may be
uploaded via file input. Following suit with behavior elsewhere on the platform, we consider item providers able
to be represented by a file if they contain at least one content UTI type.
- platform/mac/PlatformPasteboardMac.mm:
Logic previously in DragData::numberOfFiles to get and then count all file path names in the pasteboard has been
moved here instead, and no longer needs to go through the pasteboard proxy.
(WebCore::PlatformPasteboard::numberOfFiles):
Source/WebKit/mac:
Add boilerplate plumbing for fetching the number of files in the pasteboard.
- WebCoreSupport/WebPlatformStrategies.h:
- WebCoreSupport/WebPlatformStrategies.mm:
(WebPlatformStrategies::getNumberOfFiles):
Source/WebKit2:
Implements remaining support for performing data interaction onto file inputs. There are two main changes at
this layer: plumbing the number of files in the pasteboard to the web process, and pulling the implementation of
createSandboxExtensionsIfNeeded out of Mac-specific WebViewImpl::createSandboxExtensionsIfNeeded and into
WebPageProxy::createSandboxExtensionsIfNeeded.
- Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<DragData>::encode):
(IPC::ArgumentCoder<DragData>::decode):
Relax special-casing of encoding and decoding filenames to be PLATFORM(COCOA) rather than PLATFORM(MAC).
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::createSandboxExtensionsIfNeeded):
- UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:
(WebKit::WebPasteboardProxy::getNumberOfFiles):
More boilerplate plumbing to deliver the number of files in the pasteboard to the web process.
- UIProcess/Cocoa/WebViewImpl.h:
- UIProcess/Cocoa/WebViewImpl.mm:
(WebKit::WebViewImpl::performDragOperation):
(WebKit::WebViewImpl::createSandboxExtensionsIfNeeded): Deleted.
Move the logic in WebViewImpl::createSandboxExtensionsIfNeeded over to WebPageProxy::createSandboxExtensionsIfNeeded.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPasteboardProxy.h:
- UIProcess/WebPasteboardProxy.messages.in:
- WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::getNumberOfFiles):
- WebProcess/WebCoreSupport/WebPlatformStrategies.h:
- 2:06 AM Changeset in webkit [215391] by
-
- 3 edits in trunk/Source/WebKit/win
Unreviewed, fix the Windows build after r215385
r215385 introduced a new virtual method on ChromeClient that needs to be implemented in WebChromeClient for
Windows in WebKit1.
- WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::createIconForFiles):
- WebCoreSupport/WebChromeClient.h:
- 1:47 AM Changeset in webkit [215390] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix the build after r215389
Use WebCore::createTemporaryDirectory instead of -_webkit_createTemporaryDirectoryWithTemplatePrefix:.
- platform/ios/WebItemProviderPasteboard.mm:
(temporaryFileURLForDataInteractionContent):
Apr 14, 2017:
- 11:48 PM Changeset in webkit [215389] by
-
- 3 edits in trunk/Source/WebCore
Implement a way in WebItemProviderPasteboard to perform actions after file loading completes
https://bugs.webkit.org/show_bug.cgi?id=170839
<rdar://problem/31286130>
Reviewed by Tim Horton, Andy Estes, and Dan Bernstein.
Introduces -[WebItemProviderPasteboard doAfterLoadingProvidedContentIntoFileURLs:], which performs an action
after all item providers which are able to provide content are done loading their content into temporary file
URLs. If no item providers have available data, we will immediately invoke the action with an empty URL array.
For each item provider with data, we save the local URL returned in the load completion block to a randomly
generated path in the container's temporary directory. When all files are finished loading, we then invoke the
action with all file URLs that successfully loaded.
No new tests, since there is no change in behavior.
- platform/ios/WebItemProviderPasteboard.h:
- platform/ios/WebItemProviderPasteboard.mm:
(temporaryFileURLForDataInteractionContent):
(-[WebItemProviderPasteboard doAfterLoadingProvidedContentIntoFileURLs:]):
- 8:12 PM Changeset in webkit [215388] by
-
- 8 edits6 adds in trunk
Web Inspector: WebSockets: messages with non-latin letters are displayed incorrectly
https://bugs.webkit.org/show_bug.cgi?id=170760
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
Add payloadLength property, which is used to display size. When payloadLength is unavailable,
it is calculated from payloadData by Web Inspector frontend.
This fixes <webkit.org/b/170609> Web Inspector: WebSockets: Transferred size is incorrect.
- inspector/protocol/Network.json:
Source/WebCore:
Add payloadLength property, which is used to display size. When payloadLength is unavailable,
it is calculated from payloadData by Web Inspector frontend.
This fixes <webkit.org/b/170609> Web Inspector: WebSockets: Transferred size is incorrect.
Tests: http/tests/websocket/tests/hybi/inspector/binary.html
http/tests/websocket/tests/hybi/inspector/send-and-receive.html
- inspector/InspectorNetworkAgent.cpp:
(WebCore::InspectorNetworkAgent::didReceiveWebSocketFrame):
(WebCore::InspectorNetworkAgent::didSendWebSocketFrame):
Source/WebInspectorUI:
Add payloadLength property, which is used to display size. When payloadLength is unavailable,
it is calculated from payloadData by Web Inspector frontend.
This fixes <webkit.org/b/170609> Web Inspector: WebSockets: Transferred size is incorrect.
- UserInterface/Controllers/FrameResourceManager.js:
(WebInspector.FrameResourceManager.prototype._webSocketFrameReceivedOrSent):
- UserInterface/Models/WebSocketResource.js:
(WebInspector.WebSocketResource.prototype.addFrame):
LayoutTests:
Test sending and receiving text and binary (blob and array buffer) data.
- http/tests/websocket/tests/hybi/inspector/binary-expected.txt: Added.
- http/tests/websocket/tests/hybi/inspector/binary.html: Added.
- http/tests/websocket/tests/hybi/inspector/binary_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
(all_distinct_bytes):
- http/tests/websocket/tests/hybi/inspector/send-and-receive-expected.txt: Added.
- http/tests/websocket/tests/hybi/inspector/send-and-receive.html: Added.
- http/tests/websocket/tests/hybi/inspector/send-and-receive_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
- 7:13 PM Changeset in webkit [215387] by
-
- 3 edits1 add in trunk
ParseInt intrinsic in DFG backend doesn't properly flush its operands
https://bugs.webkit.org/show_bug.cgi?id=170865
Reviewed by Mark Lam and Geoffrey Garen.
JSTests:
- stress/parse-int-intrinsic-dfg-backend-flush.js: Added.
(assert):
(foo):
Source/JavaScriptCore:
The DFG backend code needed to first call .gpr()/.jsValueRegs()
before calling flushRegisters(), or the input JSValueOperand would
not be flushed.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileParseInt):
- 6:52 PM Changeset in webkit [215386] by
-
- 27 edits in trunk
Update architectures in xcconfig files.
https://bugs.webkit.org/show_bug.cgi?id=170867
<rdar://problem/31628104>
Reviewed by Joseph Pecoraro.
Source/bmalloc:
- Configurations/Base.xcconfig:
Source/JavaScriptCore:
- Configurations/Base.xcconfig:
- Configurations/FeatureDefines.xcconfig:
- Configurations/JavaScriptCore.xcconfig:
- Configurations/ToolExecutable.xcconfig:
Source/ThirdParty/libwebrtc:
- Configurations/opus.xcconfig:
Source/WebCore:
No new tests needed. Only updating xcconfig files.
- Configurations/Base.xcconfig:
- Configurations/FeatureDefines.xcconfig:
Source/WebCore/PAL:
No new tests needed. Only updating xcconfig files.
- Configurations/Base.xcconfig:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit/mac:
- Configurations/FeatureDefines.xcconfig:
Source/WebKit2:
- Configurations/FeatureDefines.xcconfig:
Source/WTF:
- Configurations/Base.xcconfig:
Tools:
- DumpRenderTree/mac/Configurations/Base.xcconfig:
- MobileMiniBrowser/Configurations/Base.xcconfig:
- TestWebKitAPI/Configurations/Base.xcconfig:
- TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
- WebKitTestRunner/Configurations/Base.xcconfig:
- 6:14 PM Changeset in webkit [215385] by
-
- 23 edits2 adds in trunk/Source
[WK2] Support Icon creation from file URLs on iOS
https://bugs.webkit.org/show_bug.cgi?id=170809
<rdar://problem/31286130>
Reviewed by Tim Horton.
Source/WebCore:
Minor tweaks and refactoring to support displaying a WebCore::Icon from a list of filepaths on iOS. Please see
below annotations for more details. No new tests yet, as behavior on Mac should not have changed, and behavior
on iOS will not change until later patches land. Tests will be added in a later patch.
Most of the changes here remove platform special-casing in FileInputType for iOS and Mac, refactoring the code
such that it works for both platforms while preserving behavior.
- html/FileInputType.cpp:
(WebCore::FileInputType::~FileInputType):
(WebCore::FileInputType::setFiles):
(WebCore::FileInputType::filesChosen):
- html/FileInputType.h:
Un-guard m_fileIconLoader on iOS, and un-guard m_displayString for Mac. Consolidate logic in both version of
filesChosen and remove the iOS-specific version. Behavior when passing in an empty display string and null Icon
will be the same as that of the existing filesChosen method on Mac. Also, introduce a version of setFiles that
takes an additional RequestIcon enum that indicates whether or not to additionally use the new filepaths to
request an Icon update. filesChosen invokes this with RequestIcon::No if a non-null Icon was specified, as is
the case when uploading a file via the image picker on iOS.
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::displayString):
- html/HTMLInputElement.h:
- html/InputType.cpp:
- html/InputType.h:
- loader/EmptyClients.h:
- page/ChromeClient.h:
Introduce ChromeClient::createIconForFiles, which generates an icon representing the content at a list of file
paths. See WebKit and WebKit2 ChangeLogs for more details.
- platform/FileChooser.h:
(WebCore::FileChooserClient::filesChosen):
- rendering/RenderFileUploadControl.cpp:
(WebCore::RenderFileUploadControl::fileTextValue):
Remove platform special-casing when generating the text to display when uploading a file. If a displayString
is specified, then we use the contents of the displayString; otherwise, fall back to using the input element's
FileList to compute the display string.
Source/WebKit/ios:
Adjust for changes in the ChromeClient in WebCore.
- WebCoreSupport/WebChromeClientIOS.h:
- WebCoreSupport/WebChromeClientIOS.mm:
(WebChromeClientIOS::createIconForFiles):
Source/WebKit/mac:
Adjust for changes in the ChromeClient in WebCore.
- WebCoreSupport/WebChromeClient.h:
- WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::loadIconForFiles):
(WebChromeClient::createIconForFiles):
Source/WebKit2:
Refactors file icon generation logic to support showing an Icon representing the content at a list of file paths
on iOS. Pulls out logic in WKFileUploadPanel responsible for generating the thumbnail image for a file input into
separate helpers in WebIconUtilities, and then uses these utilities in both WKFileUploadPanel and
WebChromeClientIOS.
- Shared/ios/WebIconUtilities.h: Added.
- Shared/ios/WebIconUtilities.mm: Added.
(WebKit::squareCropRectForSize):
(WebKit::squareImage):
(WebKit::thumbnailSizedImageForImage):
(WebKit::fallbackIconForFile):
(WebKit::iconForImageFile):
(WebKit::iconForVideoFile):
(WebKit::iconForFile):
Add logic for generating thumbnail icons, moved from WKFileUploadPanel.mm.
- UIProcess/ios/forms/WKFileUploadPanel.mm:
(squareCropRectForSize): Deleted.
(squareImage): Deleted.
(thumbnailSizedImageForImage): Deleted.
(fallbackIconForFile): Deleted.
(iconForImageFile): Deleted.
(iconForVideoFile): Deleted.
(iconForFile): Deleted.
Remove logic for generating thumbnail icons.
- WebKit2.xcodeproj/project.pbxproj:
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::loadIconForFiles):
(WebKit::WebChromeClient::createIconForFiles):
Rather than call Icon::createIconForFiles directly, loadIconForFiles now consults ChromeClient::createIconForFiles
instead. On other platforms, this just turns around and calls Icon::createIconForFiles, but on iOS, we use the
utilities introduced in WebIconUtilities to generate a file icon.
- WebProcess/WebCoreSupport/WebChromeClient.h:
- WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
(WebKit::WebChromeClient::createIconForFiles):
- 5:52 PM Changeset in webkit [215384] by
-
- 13 edits1 add in trunk
Fix basic WKURLSchemeHandler bugs.
<rdar://problem/30647559> and https://bugs.webkit.org/show_bug.cgi?id=170862
Reviewed by Andy Estes.
Source/WebCore:
Covered by new API tests.
- loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::didReceiveDataOrBuffer):
Source/WebKit2:
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction):
- UIProcess/WebURLSchemeHandlerTask.cpp:
(WebKit::WebURLSchemeHandlerTask::didReceiveResponse):
- WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::addURLSchemeHandlerTaskProxy):
(WebKit::WebLoaderStrategy::removeURLSchemeHandlerTaskProxy):
(WebKit::WebLoaderStrategy::remove):
- WebProcess/Network/WebLoaderStrategy.h:
- WebProcess/WebPage/WebURLSchemeHandlerProxy.cpp:
(WebKit::WebURLSchemeHandlerProxy::startNewTask):
(WebKit::WebURLSchemeHandlerProxy::taskDidComplete):
(WebKit::WebURLSchemeHandlerProxy::taskDidStopLoading):
- WebProcess/WebPage/WebURLSchemeHandlerProxy.h:
- WebProcess/WebPage/WebURLSchemeHandlerTaskProxy.cpp:
(WebKit::WebURLSchemeHandlerTaskProxy::WebURLSchemeHandlerTaskProxy):
(WebKit::WebURLSchemeHandlerTaskProxy::stopLoading):
(WebKit::WebURLSchemeHandlerTaskProxy::didReceiveResponse):
(WebKit::WebURLSchemeHandlerTaskProxy::didReceiveData):
(WebKit::WebURLSchemeHandlerTaskProxy::didComplete):
(WebKit::WebURLSchemeHandlerTaskProxy::hasLoader):
- WebProcess/WebPage/WebURLSchemeHandlerTaskProxy.h:
(WebKit::WebURLSchemeHandlerTaskProxy::identifier):
Tools:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm: Added.
(-[SchemeHandler initWithData:mimeType:]):
(-[SchemeHandler dealloc]):
(-[SchemeHandler webView:startTask:]):
(-[SchemeHandler webView:stopTask:]):
(TEST):
- 5:18 PM Changeset in webkit [215383] by
-
- 2 edits in branches/safari-603-branch/Source/JavaScriptCore
Cherry-pick r214637. rdar://problem/31615783
- 5:17 PM Changeset in webkit [215382] by
-
- 20 edits4 copies23 adds in trunk
[WebCrypto] Support HKDF
https://bugs.webkit.org/show_bug.cgi?id=170636
<rdar://problem/23539827>
Reviewed by Brent Fulgham.
LayoutTests/imported/w3c:
- web-platform-tests/WebCryptoAPI/derive_bits_keys/hkdf.worker-expected.txt:
- web-platform-tests/WebCryptoAPI/derive_bits_keys/test_hkdf-expected.txt:
- web-platform-tests/WebCryptoAPI/import_export/symmetric_importKey.worker-expected.txt:
- web-platform-tests/WebCryptoAPI/import_export/test_symmetric_importKey-expected.txt:
Source/WebCore:
This patch implements HKDF according to the spec: https://www.w3.org/TR/WebCryptoAPI/#hkdf.
Supported operations include deriveKey, deriveBits, importKey and getKeyLength.
Tests: crypto/subtle/ecdh-import-key-derive-hkdf-key.html
crypto/subtle/hkdf-derive-bits-malformed-parametrs.html
crypto/subtle/hkdf-import-key-derive-bits.html
crypto/subtle/hkdf-import-key-derive-hmac-key.html
crypto/subtle/hkdf-import-key-malformed-parameters.html
crypto/subtle/hkdf-import-key.html
crypto/workers/subtle/hkdf-import-key-derive-bits.html
crypto/workers/subtle/hkdf-import-key-derive-hmac-key.html
crypto/workers/subtle/hkdf-import-key.html
- CMakeLists.txt:
- DerivedSources.make:
- PlatformGTK.cmake:
- PlatformMac.cmake:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSCryptoAlgorithmDictionary.cpp:
(WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
(WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
Rename HKDF_CTR to HKDF.
- bindings/js/JSSubtleCryptoCustom.cpp:
(WebCore::normalizeCryptoAlgorithmParameters):
- bindings/js/SerializedScriptValue.cpp:
(WebCore::CloneSerializer::write):
(WebCore::CloneDeserializer::read):
Rename HKDF_CTR to HKDF.
- crypto/CommonCryptoUtilities.h:
- crypto/CryptoAlgorithmIdentifier.h:
- crypto/CryptoAlgorithmParameters.h:
- crypto/algorithms/CryptoAlgorithmHKDF.cpp: Added.
(WebCore::CryptoAlgorithmHKDF::create):
(WebCore::CryptoAlgorithmHKDF::identifier):
(WebCore::CryptoAlgorithmHKDF::deriveBits):
(WebCore::CryptoAlgorithmHKDF::importKey):
(WebCore::CryptoAlgorithmHKDF::getKeyLength):
- crypto/algorithms/CryptoAlgorithmHKDF.h: Added.
- crypto/gcrypt/CryptoAlgorithmHKDFGCrypt.cpp: Added.
(WebCore::CryptoAlgorithmHKDF::platformDeriveBits):
- crypto/mac/CryptoAlgorithmHKDFMac.cpp: Added.
(WebCore::CryptoAlgorithmHKDF::platformDeriveBits):
- crypto/mac/CryptoAlgorithmRegistryMac.cpp:
(WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms):
- crypto/parameters/CryptoAlgorithmHkdfParams.h: Added.
- crypto/parameters/HkdfParams.idl: Added.
LayoutTests:
- TestExpectations:
- crypto/subtle/ecdh-import-key-derive-hkdf-key-expected.txt: Added.
- crypto/subtle/ecdh-import-key-derive-hkdf-key.html: Added.
- crypto/subtle/hkdf-derive-bits-malformed-parametrs-expected.txt: Added.
- crypto/subtle/hkdf-derive-bits-malformed-parametrs.html: Added.
- crypto/subtle/hkdf-import-key-derive-bits-expected.txt: Added.
- crypto/subtle/hkdf-import-key-derive-bits.html: Added.
- crypto/subtle/hkdf-import-key-derive-hmac-key-expected.txt: Added.
- crypto/subtle/hkdf-import-key-derive-hmac-key.html: Added.
- crypto/subtle/hkdf-import-key-expected.txt: Added.
- crypto/subtle/hkdf-import-key-malformed-parameters-expected.txt: Added.
- crypto/subtle/hkdf-import-key-malformed-parameters.html: Added.
- crypto/subtle/hkdf-import-key.html: Added.
- crypto/workers/subtle/hkdf-import-key-derive-bits-expected.txt: Added.
- crypto/workers/subtle/hkdf-import-key-derive-bits.html: Added.
- crypto/workers/subtle/hkdf-import-key-derive-hmac-key-expected.txt: Added.
- crypto/workers/subtle/hkdf-import-key-derive-hmac-key.html: Added.
- crypto/workers/subtle/hkdf-import-key-expected.txt: Added.
- crypto/workers/subtle/hkdf-import-key.html: Added.
- crypto/workers/subtle/resources/hkdf-import-key-derive-bits.js: Added.
- crypto/workers/subtle/resources/hkdf-import-key-derive-hmac-key.js: Added.
- crypto/workers/subtle/resources/hkdf-import-key.js: Added.
- 5:09 PM Changeset in webkit [215381] by
-
- 2 edits in trunk/Tools
webkit-patch failed to detect git repository
https://bugs.webkit.org/show_bug.cgi?id=170859
Patch by Bill Ming <mbbill@gmail.com> on 2017-04-14
Reviewed by Daniel Bates.
Windows cmd does not accept single quoted path. So, using
double quotes here will provide better platform compatibility.
- Scripts/VCSUtils.pm:
(isGitDirectory):
(isGitSVNDirectory):
(svnRevisionForDirectory):
(svnInfoForPath):
- 4:26 PM Changeset in webkit [215380] by
-
- 3 edits in trunk/Tools
Unreviewed, rolling out r215374.
This change causes LayoutTests to exit early with crashes on
Sierra.
Reverted changeset:
"webkitpy: Ignore previously launched pid when system is under
stress"
https://bugs.webkit.org/show_bug.cgi?id=170741
http://trac.webkit.org/changeset/215374
- 4:20 PM Changeset in webkit [215379] by
-
- 2 edits in trunk/Source/JavaScriptCore
WebAssembly: B3IRGenerator should use phis for result types
https://bugs.webkit.org/show_bug.cgi?id=170863
Reviewed by Filip Pizlo.
Currently, we use variables for the result types of control flow in
Wasm. We did this originally since we weren't sure that the phis we
generated would be optimal. Since then, we have verified that the edges
in wasm control flow ensure that each upsilon will dominate its phi
so we don't need to use variables.
- wasm/WasmB3IRGenerator.cpp:
(JSC::Wasm::B3IRGenerator::ControlData::ControlData):
(JSC::Wasm::B3IRGenerator::addTopLevel):
(JSC::Wasm::B3IRGenerator::addBlock):
(JSC::Wasm::B3IRGenerator::addLoop):
(JSC::Wasm::B3IRGenerator::unify):
- 4:03 PM Changeset in webkit [215378] by
-
- 12 edits2 adds in trunk/Websites/perf.webkit.org
Add sub-commit UI in commit log viewer.
https://bugs.webkit.org/show_bug.cgi?id=170379
Reviewed by Ryosuke Niwa.
Add an API to return sub-commits for a given commit.
Add sub-commit difference viewer into commit log viewer to show changed sub-commits between two commits.
Add 'ownsSubCommits' info in 'api/commits' return values.
Extend 'api/manifest' to include whether a repositories owns other repositories.
Only show this sub-commit difference viewer when a repository owns other repositories and both commits owns sub-commits.
Add unit tests for those new features.
- browser-tests/commit-log-viewer-tests.js: Updated test cases.
- public/api/commits.php: Added 'sub-commits' to provide sub-commit for a given commit.
- public/include/commit-log-fetcher.php: Added function to query sub-commit from database. Added 'repository' and 'ownsSubCommits' fields in returning commits.
- public/v3/components/expand-collapse-button.js: Added.
(ExpandCollapseButton):
(ExpandCollapseButton.prototype.didConstructShadowTree): Changes state on click and dispatches 'toggle' event.
(ExpandCollapseButton.sizeFactor):
(ExpandCollapseButton.buttonContent):
(ExpandCollapseButton.cssTemplate):
- public/v3/components/commit-log-viewer.js:
(CommitLogViewer.prototype._renderCommitList): Added sub-commit viewer if two adjacent commits both have sub-commits.
(CommitLogViewer.cssTemplate):
- public/v3/components/sub-commit-viewer.js: Added.
(SubCommitViewer): Added 'SubCommitViewer' class to represent the sub-commit differences between two given commits.`
(SubCommitViewer.prototype.didConstructShadowTree): Makes 'expand-collapse' button listen to 'toggle' event.
(SubCommitViewer.prototype._toggleVisibility): Updates UI once 'expand-collapse' button is clicked.
(SubCommitViewer.prototype.render): Render sub-commit view based on the state.
(SubCommitViewer.prototype._renderSubcommitTable): Generates sub-commits difference table entries.
(SubCommitViewer.htmlTemplate):
(SubCommitViewer.cssTemplate):
- public/v3/index.html: Added 'sub-commit-viewer.js' and 'expand-collapse-button.js'.
- public/v3/models/commit-log.js:
(CommitLog): Added '_subCommits'.
(CommitLog.prototype.updateSingleton): Updates 'rawData.ownsSubCommits' as well.
(CommitLog.prototype.ownsSubCommits):
(CommitLog.prototype.subCommits): Added. Returns sub-commits.
(CommitLog.prototype.fetchSubCommits): Added. Fetches sub-commits if haven't fetched them before.
(CommitLog.prototype._buildSubCommitMap): Added. Creates a map which maps repositories to commits.
(CommitLog.diffSubCommits): Added. Finds difference between two given commits.
(CommitLog.fetchBetweenRevisions): Updated due to '_constructFromRawData' change.
(CommitLog.fetchForSingleRevision): Updated due to '_constructFromRawData' change.
(CommitLog._constructFromRawData): Removed first argument 'repository' as it can be determined by calling 'Repository.findById'.
- public/v3/models/repository.js:
(Repository):
(Repository.prototype.owner): Returns the owner id.
(Repository.prototype.ownedRepositories): Returns a list of repositories owned by this repository.
- server-tests/api-commits-tests.js: Added tests for 'sub-commits' filter.
- server-tests/api-manifest-tests.js: Added a test.
- unit-tests/commit-log-tests.js: Added tests for 'fetchSubCommits' and 'diffSubCommits'.
- unit-tests/resources/mock-v3-models.js: Added 'ownerRepository' and 'ownedRepository'.
- 3:17 PM Changeset in webkit [215377] by
-
- 2 edits in trunk/Tools
[ios-simulator] API test WebKit2.AdditionalReadAccessAllowedURLs is failing
https://bugs.webkit.org/show_bug.cgi?id=170856
Disabled the newly-added test in the Simulator, which doesn’t enforce sandboxing.
- TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
- 2:03 PM Changeset in webkit [215376] by
-
- 2 edits in trunk/LayoutTests
Skip workers/wasm-* LayoutTests on ios-simulator.
Unreviewed test gardening.
- platform/ios/TestExpectations:
- 1:59 PM Changeset in webkit [215375] by
-
- 6 edits2 adds in trunk
text-align start / end failure in table cells
https://bugs.webkit.org/show_bug.cgi?id=141417
<rdar://problem/31051672>
Reviewed by Antti Koivisto.
Source/WebCore:
Apply "text-align: center" on th elements when parent's computed value for the 'text-align' property
is its initial value, unless it is explicitly set.
Test: fast/table/center-th-when-parent-has-initial-text-align.html
- css/CSSProperties.json:
- css/StyleBuilderCustom.h:
(WebCore::StyleBuilderCustom::applyInitialTextAlign):
(WebCore::StyleBuilderCustom::applyValueTextAlign):
- css/StyleResolver.cpp:
(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::StyleResolver::applyProperty):
- rendering/style/RenderStyle.h:
(WebCore::RenderStyle::hasExplicitlySetTextAlign):
(WebCore::RenderStyle::setHasExplicitlySetTextAlign):
(WebCore::RenderStyle::NonInheritedFlags::hasExplicitlySetTextAlign):
(WebCore::RenderStyle::NonInheritedFlags::setHasExplicitlySetTextAlign):
LayoutTests:
- fast/table/center-th-when-parent-has-initial-text-align-expected.html: Added.
- fast/table/center-th-when-parent-has-initial-text-align.html: Added.
- 1:52 PM Changeset in webkit [215374] by
-
- 3 edits in trunk/Tools
webkitpy: Ignore previously launched pid when system is under stress
https://bugs.webkit.org/show_bug.cgi?id=170741
Unreviewed infrastructure fix.
Drivers are destroyed between failing layout tests, which is not necessary and
prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
- Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(Worker._kill_driver): Do not destroy drivers when they are stopped.
- Scripts/webkitpy/port/driver.py:
(Driver.stop): Reset driver values set in initializer.
- 1:52 PM Changeset in webkit [215373] by
-
- 2 edits in trunk/Source/JavaScriptCore
Fix Windows build after r215368.
https://bugs.webkit.org/show_bug.cgi?id=170641
- CMakeLists.txt:
Add new directory containing files needed in WebCore.
- 1:34 PM Changeset in webkit [215372] by
-
- 2 edits in trunk/Tools
[ios-simulator] API test WebKit2.WKWebProcessPlugInRangeHandle timing out
https://bugs.webkit.org/show_bug.cgi?id=167594
Re-enabled this API test now that webkit.org/b/161967 is fixed.
- TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
(TEST):
- 1:29 PM Changeset in webkit [215371] by
-
- 4 edits in trunk
[ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
https://bugs.webkit.org/show_bug.cgi?id=161967
Reviewed by Alexey Proskuryakov.
Source/WebCore:
DataDetectorsCoreSPI.h defined DDQueryOffset as a struct of two CFIndexes, which is 16 bytes
on LP64, but the struct is actually defined as two CFIndex-typed 32-bit bitfields, which is
8 bytes on LP64. This breaks the ABI on Public SDK builds when calling functions that take
or return DDQueryOffsets.
- platform/spi/cocoa/DataDetectorsCoreSPI.h: Updated the DDQueryOffset definition for
Public SDK builds, and added a static_assert to detect future size changes at compile time.
Tools:
- TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
(TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
- 12:50 PM Changeset in webkit [215370] by
-
- 3 edits1 add in trunk
[JSC] use ExpressionErrorClassifier for AwaitExpression operand
https://bugs.webkit.org/show_bug.cgi?id=170844
Reviewed by Saam Barati.
JSTests:
- stress/regress-170732.js: Added.
Source/JavaScriptCore:
In parseAssignmentExpression(), several cover grammars are handled, and
use ExpressionErrorClassifier to record hints about which grammars to
try.
In parseAwaitExpression(), the hints recorded during parsing of the
operand need to be discarded, because if they propagate to the outer
parseAssignmentExpression(), the hints will lead the parser down invalid
branches that should be skipped.
This change adds an additional ExpressionErrorClassifier to
parseAwaitExpression(), in order to discard hints recorded trying to
parse the operand.
- parser/Parser.cpp:
(JSC::Parser<LexerType>::parseAwaitExpression):
- 11:48 AM Changeset in webkit [215369] by
-
- 2 edits in trunk/Source/WebCore
Removed unused and unimplemented methods from MediaPlayer
https://bugs.webkit.org/show_bug.cgi?id=170848
Reviewed by Jer Noble.
No new tests needed.
- platform/graphics/MediaPlayer.h:
- 11:09 AM Changeset in webkit [215368] by
-
- 3 edits in trunk/Source/JavaScriptCore
WebAssembly: There is a short window of time where a CodeBlock could be destroyed before all of its async compilation callbacks are called
https://bugs.webkit.org/show_bug.cgi?id=170641
Reviewed by Keith Miller.
There is an unlikely race when a CodeBlock compilation fails,
the module compiles a new CodeBlock for that memory mode, all while
the CodeBlock is notifying its callbacks that it has finished.
There is a chance that the Module could deref its failed CodeBlock
at that point, destroying it, before the callbacks were able to
grab a Ref to the CodeBlock. This patch fixes the race by having the
callbacks ref the CodeBlock.
This patch also has the Plan clear out all of its callbacks
once it gets completed. This adds an extra defense to anybody
that grabs refs to the Plan in the callback.
- wasm/WasmCodeBlock.cpp:
(JSC::Wasm::CodeBlock::CodeBlock):
(JSC::Wasm::CodeBlock::compileAsync):
- wasm/WasmPlan.cpp:
(JSC::Wasm::Plan::complete):
- 10:57 AM Changeset in webkit [215367] by
-
- 2 edits in trunk/Tools
Unreviewed, rolling out r215363.
This change causes LayoutTests to exit early with crashes.
Reverted changeset:
"webkitpy: Ignore previously launched pid when system is under
stress"
https://bugs.webkit.org/show_bug.cgi?id=170741
http://trac.webkit.org/changeset/215363
- 10:57 AM Changeset in webkit [215366] by
-
- 5 edits1 add in trunk
Add performance test for asking the platform for a font for U+2060 WORD JOINER
https://bugs.webkit.org/show_bug.cgi?id=170842
Reviewed by Tim Horton.
PerformanceTests:
- Layout/word-joiner.html: Added.
Source/WebCore:
No new tests because there is no behavior change.
- platform/graphics/WidthCache.h:
(WebCore::WidthCache::add):
(WebCore::WidthCache::addSlowCase):
Source/WTF:
- wtf/unicode/CharacterNames.h:
- 10:43 AM Changeset in webkit [215365] by
-
- 5 edits in trunk/Source/JavaScriptCore
Air::RegLiveness should be constraint-based
https://bugs.webkit.org/show_bug.cgi?id=170817
Reviewed by Saam Barati.
Previously, I changed the Air liveness analyses based on Air::Liveness<> to be
constraint-based and this was a significant speed-up. Now I'm adding the same
functionality to RegLiveness.
This is a 1% speed-up on wasm B3 -O1 compile times.
- b3/air/AirAllocateRegistersAndStackByLinearScan.cpp:
- b3/air/AirLivenessAdapter.h:
(JSC::B3::Air::LivenessAdapter::LivenessAdapter):
(JSC::B3::Air::LivenessAdapter::prepareToCompute):
(JSC::B3::Air::LivenessAdapter::actionsAt):
- b3/air/AirRegLiveness.cpp:
(JSC::B3::Air::RegLiveness::RegLiveness):
(JSC::B3::Air::RegLiveness::LocalCalcForUnifiedTmpLiveness::LocalCalcForUnifiedTmpLiveness):
(JSC::B3::Air::RegLiveness::LocalCalcForUnifiedTmpLiveness::execute):
(JSC::B3::Air::RegLiveness::LocalCalc::execute): Deleted.
- b3/air/AirRegLiveness.h:
(JSC::B3::Air::RegLiveness::Actions::Actions):
(JSC::B3::Air::RegLiveness::LocalCalcBase::LocalCalcBase):
(JSC::B3::Air::RegLiveness::LocalCalcBase::live):
(JSC::B3::Air::RegLiveness::LocalCalcBase::isLive):
(JSC::B3::Air::RegLiveness::LocalCalc::LocalCalc):
(JSC::B3::Air::RegLiveness::LocalCalc::execute):
(JSC::B3::Air::RegLiveness::LocalCalc::live): Deleted.
(JSC::B3::Air::RegLiveness::LocalCalc::isLive): Deleted.
- 10:31 AM Changeset in webkit [215364] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed, rolling out r215350.
This change broke the Windows build.
Reverted changeset:
"Remove unused SharedBuffer constructor"
https://bugs.webkit.org/show_bug.cgi?id=170828
http://trac.webkit.org/changeset/215350
- 10:08 AM Changeset in webkit [215363] by
-
- 2 edits in trunk/Tools
webkitpy: Ignore previously launched pid when system is under stress
https://bugs.webkit.org/show_bug.cgi?id=170741
Unreviewed infrastructure fix.
Drivers are destroyed between failing layout tests, which is not necessary and
prevents the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
- Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(Worker._kill_driver): Do not destroy drivers when they are stopped.
- 9:04 AM Changeset in webkit [215362] by
-
- 29 edits in trunk/Source
[MediaSource] Push capabilities across process boundary during UIProcess capture.
https://bugs.webkit.org/show_bug.cgi?id=170814
Reviewed by Eric Carlson.
Source/WebCore:
There's no real reason for RealtimeMediaSourceCapabilities to be RefCounted nor to keep them from
being created on the stack. So in addition to making that class coder-compliant, change all the
classes that vend capabilities to use a unique_ptr<> instead of a RefPtr<>.
- Modules/mediastream/CanvasCaptureMediaStreamTrack.h:
- Modules/webaudio/MediaStreamAudioSource.cpp:
(WebCore::MediaStreamAudioSource::capabilities):
- Modules/webaudio/MediaStreamAudioSource.h:
- platform/mediastream/MediaEndpoint.cpp:
- platform/mediastream/MediaStreamTrackPrivate.cpp:
(WebCore::MediaStreamTrackPrivate::capabilities):
- platform/mediastream/MediaStreamTrackPrivate.h:
- platform/mediastream/RealtimeMediaSource.h:
- platform/mediastream/RealtimeMediaSourceCapabilities.h:
(WebCore::CapabilityValueOrRange::encode):
(WebCore::CapabilityValueOrRange::decode):
(WebCore::RealtimeMediaSourceCapabilities::RealtimeMediaSourceCapabilities):
(WebCore::RealtimeMediaSourceCapabilities::supportedConstraints):
(WebCore::RealtimeMediaSourceCapabilities::setSupportedConstraints):
(WebCore::RealtimeMediaSourceCapabilities::encode):
(WebCore::RealtimeMediaSourceCapabilities::decode):
(WebCore::RealtimeMediaSourceCapabilities::create): Deleted.
- platform/mediastream/RealtimeMediaSourceSettings.h:
- platform/mediastream/mac/AVMediaCaptureSource.h:
- platform/mediastream/mac/AVMediaCaptureSource.mm:
(WebCore::AVMediaCaptureSource::initializeCapabilities):
(WebCore::AVMediaCaptureSource::capabilities):
- platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioCaptureSource::capabilities):
- platform/mediastream/mac/CoreAudioCaptureSource.h:
- platform/mediastream/mac/RealtimeIncomingAudioSource.cpp:
(WebCore::RealtimeIncomingAudioSource::capabilities):
- platform/mediastream/mac/RealtimeIncomingAudioSource.h:
- platform/mediastream/mac/RealtimeIncomingVideoSource.cpp:
(WebCore::RealtimeIncomingVideoSource::capabilities):
- platform/mediastream/mac/RealtimeIncomingVideoSource.h:
- platform/mock/MockRealtimeMediaSource.cpp:
(WebCore::MockRealtimeMediaSource::initializeCapabilities):
(WebCore::MockRealtimeMediaSource::capabilities):
- platform/mock/MockRealtimeMediaSource.h:
- platform/mediastream/openwebrtc/RealtimeMediaSourceOwr.h:
Source/WebKit2:
Make a new synchronous getter for capabilities(), moderated by only requesting the capabilities() cross-process
the first time called.
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
(WebKit::UserMediaCaptureManagerProxy::capabilities):
(WebKit::UserMediaCaptureManagerProxy::supportedConstraints):
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.h:
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.messages.in:
- WebProcess/cocoa/UserMediaCaptureManager.cpp:
(WebKit::UserMediaCaptureManager::Source::setCapabilities):
(WebKit::UserMediaCaptureManager::capabilities):
- WebProcess/cocoa/UserMediaCaptureManager.h:
- 8:13 AM Changeset in webkit [215361] by
-
- 2 edits in trunk/Tools
webkitpy: Ignore previously launched pid when system is under stress
https://bugs.webkit.org/show_bug.cgi?id=170741
Unreviewed infrastructure fix.
Server processes are destroyed in the driver, which is not necessary and prevents
the work-around implemented in https://bugs.webkit.org/show_bug.cgi?id=170741.
- Scripts/webkitpy/port/driver.py:
(Driver.run_test): Do not destroy server process.
(Driver._start): Only create the server process if it is None.
(Driver.stop): Do not destroy server process.
- 2:08 AM Changeset in webkit [215360] by
-
- 2 edits in trunk/JSTests
Safari 10.1 JSON.parse returns incorrect object for numeric keys with decimal values
https://bugs.webkit.org/show_bug.cgi?id=170442
Reviewed by Yusuke Suzuki.
- stress/object-number-properties.js:
- 12:59 AM Changeset in webkit [215359] by
-
- 3 edits1 add in trunk
[JSC] Date.parse should accept wider range of representation
https://bugs.webkit.org/show_bug.cgi?id=170720
Reviewed by Darin Adler.
JSTests:
- stress/date-relaxed.js: Added.
(shouldBe):
(throw.new.Error):
Source/WTF:
We would like to relax Date.parse to accept the representation "May 8".
At that time, we choose2000as a default year. This is because of
the following reason.
- According to the V8, this default value is compatible to the old KJS. While current V8 uses 2001, SpiderMonkey does not have such a fallback path. So this reason is not big deal.
- It is a leap year. When using
new Date("Feb 29"), we assume that people want to save month and day. Leap year can save user inputs if they is valid. If we use the current year instead, the current year may not be a leap year. In that case,new Date("Feb 29").getMonth()becomes 2 (March).
- wtf/DateMath.cpp:
(WTF::parseDateFromNullTerminatedCharacters):