Timeline
Jul 31, 2016:
- 11:51 PM Changeset in webkit [203970] by
-
- 13 edits2 adds in branches/safari-602-branch
Merge r203842. rdar://problem/27553464
- 11:51 PM Changeset in webkit [203969] by
-
- 3 edits4 adds in branches/safari-602-branch
Merge r203931. rdar://problem/27317407
- 11:51 PM Changeset in webkit [203968] by
-
- 5 edits2 adds in branches/safari-602-branch
Merge r203928. rdar://problem/27179484
- 11:51 PM Changeset in webkit [203967] by
-
- 3 edits2 adds in branches/safari-602-branch
Merge r203924. rdar://problem/27355214
- 11:51 PM Changeset in webkit [203966] by
-
- 6 edits in branches/safari-602-branch
Merge r203916. rdar://problem/27594995
- 11:51 PM Changeset in webkit [203965] by
-
- 11 edits2 adds in branches/safari-602-branch
Merge r203913. rdar://problem/27558003
- 11:51 PM Changeset in webkit [203964] by
-
- 2 edits in branches/safari-602-branch/Source/WebKit2
Merge r203909. rdar://problem/27078089
- 11:51 PM Changeset in webkit [203963] by
-
- 2 edits in branches/safari-602-branch/Tools
Merge r203905. rdar://problem/27610246
- 11:51 PM Changeset in webkit [203962] by
-
- 4 edits in branches/safari-602-branch/Source/WebCore
Merge r203799. rdar://problem/27556788
- 11:00 PM Changeset in webkit [203961] by
-
- 5 edits in trunk
Fetch Response built-ins should use @makeThisTypeError
https://bugs.webkit.org/show_bug.cgi?id=160290
Patch by Youenn Fablet <youenn@apple.com> on 2016-07-31
Reviewed by Darin Adler.
Source/WebCore:
Covered by updated test.
Fixed type error checks.
Making use of @makeThisTypeError to have the correct error message.
Updating arrayBuffer, blob, json and text to return rejected promises in lieu of throwing
in case the 'this' value is not q Response object.
- Modules/fetch/FetchResponse.js:
(clone): Updated instanceof check and making use of @makeThisTypeError.
(arrayBuffer): Ditto.
(blob): Ditto.
(formData): Ditto.
(json): Ditto.
(text): Ditto.
LayoutTests:
- fetch/fetch-error-messages-expected.txt:
- fetch/fetch-error-messages.html:
- 10:43 PM Changeset in webkit [203960] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Implement missing WebCore::moveFile() using GLib functions
https://bugs.webkit.org/show_bug.cgi?id=160363
Patch by Adrian Perez de Castro <Adrian Perez de Castro> on 2016-07-31
Reviewed by Carlos Garcia Campos.
- platform/glib/FileSystemGlib.cpp:
(WebCore::moveFile): Function added.
- 7:13 PM Changeset in webkit [203959] by
-
- 5 edits in tags/Safari-602.1.44.0.1/Source
Versioning.
- 7:11 PM Changeset in webkit [203958] by
-
- 1 copy in tags/Safari-602.1.44.0.1
New tag.
- 5:37 PM Changeset in webkit [203957] by
-
- 4 edits in trunk/Source/JavaScriptCore
[JSC] Should check Test262Error correctly
https://bugs.webkit.org/show_bug.cgi?id=159862
Reviewed by Saam Barati.
Test262Error in the harness does not have "name" property.
Rather than checking "name" property, peforminginstanceof
is better to check the class of the exception.
- jsc.cpp:
(checkUncaughtException):
- runtime/JSObject.h:
- tests/test262.yaml:
- 4:36 PM Changeset in webkit [203956] by
-
- 29 edits in trunk/Source/WebCore
Drop [StrictTypeChecking] in cases where it is a no-op
https://bugs.webkit.org/show_bug.cgi?id=160387
Reviewed by Darin Adler.
Drop [StrictTypeChecking] in cases where it is a no-op. After r203949 & r203950,
[StrictTypeChecking] only has an impact when used on operation parameters of
string types and is currently used as a workaround for bugs in our overload
resolution algorithm.
- Modules/mediastream/RTCPeerConnection.idl:
- Modules/mediastream/RTCRtpSender.idl:
- bindings/scripts/test/TestObj.idl:
- bindings/scripts/test/TestTypedefs.idl:
- html/canvas/ANGLEInstancedArrays.idl:
- html/canvas/OESVertexArrayObject.idl:
- html/canvas/WebGL2RenderingContext.idl:
- html/canvas/WebGLDebugShaders.idl:
- html/canvas/WebGLLoseContext.idl:
- html/canvas/WebGLRenderingContextBase.idl:
- svg/SVGAngle.idl:
- svg/SVGColor.idl:
- svg/SVGLength.idl:
- svg/SVGLengthList.idl:
- svg/SVGMatrix.idl:
- svg/SVGNumberList.idl:
- svg/SVGPaint.idl:
- svg/SVGPathSegList.idl:
- svg/SVGPoint.idl:
- svg/SVGPointList.idl:
- svg/SVGStringList.idl:
- svg/SVGTransform.idl:
- svg/SVGTransformList.idl:
- 1:02 PM Changeset in webkit [203955] by
-
- 9 edits2 adds in trunk
AX: Add a check for touch event listener on iOS accessibility object
https://bugs.webkit.org/show_bug.cgi?id=160388
Reviewed by Chris Fleizach.
Source/WebCore:
dispatchTouchEvent() is not working correctly within AXPress() sometimes. Need to
investigate it more in the future. Now, adding a check for the touch event listener
on the object's node so that iOS can handle dispatching the touch event instead.
Test: accessibility/ios-simulator/has-touch-event-listener.html
- accessibility/AccessibilityObject.h:
- accessibility/ios/AccessibilityObjectIOS.mm:
(WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
(WebCore::AccessibilityObject::hasTouchEventListener):
- accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(appendStringToResult):
(-[WebAccessibilityObjectWrapper _accessibilityHasTouchEventListener]):
(-[WebAccessibilityObjectWrapper _accessibilityValueIsAutofilled]):
Tools:
- DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::boolAttributeValue):
- WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::boolAttributeValue):
LayoutTests:
- accessibility/ios-simulator/has-touch-event-listener-expected.txt: Added.
- accessibility/ios-simulator/has-touch-event-listener.html: Added.
- 1:31 AM Changeset in webkit [203954] by
-
- 2 edits in trunk/Source/WebKit2
[GTK][Unix] Implement missing WebKit::SharedMemory::create() function
https://bugs.webkit.org/show_bug.cgi?id=160364
Patch by Adrian Perez de Castro <Adrian Perez de Castro> on 2016-07-31
Reviewed by Carlos Garcia Campos.
The WebKit::SharedMemory::create() function is missing for the Unix
platform, which is also used by the GTK+ port. The latter is going
to need this in place to use the common content filtering code.
- Platform/unix/SharedMemoryUnix.cpp:
(WebKit::accessModeMMap): Added helper function to convert a
SharedMemory::Protection value into flags useable with mmap().
(WebKit::SharedMemory::create): Added. Implementation reuses code
existing in the SharedMemory::allocate() function.
(WebKit::SharedMemory::allocate): Reimplemented in terms of
SharedMemory::create().
- 12:04 AM Changeset in webkit [203953] by
-
- 11 edits1 copy3 adds in trunk/Source/JavaScriptCore
[ES6] Module binding can be exported by multiple names
https://bugs.webkit.org/show_bug.cgi?id=160343
Reviewed by Saam Barati.
ES6 Module can export the same local binding by using multiple names.
For example,
`
var value = 42;
export { value };
export { value as value2 };
`
Currently, we only allowed one local binding to be exported with one name. So, in the above case,
the local binding "value" is exported as "value2" and "value" name is not exported. This is wrong.
To fix this issue, we collect the correspondence (local name => exported name) to the local bindings
in the parser. Previously, we only maintained the exported local bindings in the parser. And utilize
this information when creating the export entries in ModuleAnalyzer.
And this patch also moves ModuleScopeData from the Scope object to the Parser class since exported
names should be managed per-module, not per-scope.
This change fixes several test262 failures.
- JavaScriptCore.xcodeproj/project.pbxproj:
- parser/ModuleAnalyzer.cpp:
(JSC::ModuleAnalyzer::exportVariable):
(JSC::ModuleAnalyzer::analyze):
(JSC::ModuleAnalyzer::exportedBinding): Deleted.
(JSC::ModuleAnalyzer::declareExportAlias): Deleted.
- parser/ModuleAnalyzer.h:
- parser/ModuleScopeData.h: Copied from Source/JavaScriptCore/parser/ModuleAnalyzer.h.
(JSC::ModuleScopeData::create):
(JSC::ModuleScopeData::exportedBindings):
(JSC::ModuleScopeData::exportName):
(JSC::ModuleScopeData::exportBinding):
- parser/Nodes.cpp:
(JSC::ProgramNode::ProgramNode):
(JSC::ModuleProgramNode::ModuleProgramNode):
(JSC::EvalNode::EvalNode):
(JSC::FunctionNode::FunctionNode):
- parser/Nodes.h:
(JSC::ModuleProgramNode::moduleScopeData):
- parser/NodesAnalyzeModule.cpp:
(JSC::ExportDefaultDeclarationNode::analyzeModule):
(JSC::ExportNamedDeclarationNode::analyzeModule): Deleted.
- parser/Parser.cpp:
(JSC::Parser<LexerType>::Parser):
(JSC::Parser<LexerType>::parseModuleSourceElements):
(JSC::Parser<LexerType>::parseVariableDeclarationList):
(JSC::Parser<LexerType>::createBindingPattern):
(JSC::Parser<LexerType>::parseFunctionDeclaration):
(JSC::Parser<LexerType>::parseClassDeclaration):
(JSC::Parser<LexerType>::parseExportSpecifier):
(JSC::Parser<LexerType>::parseExportDeclaration):
- parser/Parser.h:
(JSC::Parser::exportName):
(JSC::Parser<LexerType>::parse):
(JSC::ModuleScopeData::create): Deleted.
(JSC::ModuleScopeData::exportedBindings): Deleted.
(JSC::ModuleScopeData::exportName): Deleted.
(JSC::ModuleScopeData::exportBinding): Deleted.
(JSC::Scope::Scope): Deleted.
(JSC::Scope::setSourceParseMode): Deleted.
(JSC::Scope::moduleScopeData): Deleted.
(JSC::Scope::setIsModule): Deleted.
- tests/modules/aliased-names.js: Added.
- tests/modules/aliased-names/main.js: Added.
(change):
- tests/stress/modules-syntax-error-with-names.js:
(export.Cocoa):
(SyntaxError.Cannot.export.a.duplicate.name):
- tests/test262.yaml:
Jul 30, 2016:
- 6:08 PM Changeset in webkit [203952] by
-
- 5 edits2 adds in trunk
Assertion failure while setting the length of an ArrayClass array.
https://bugs.webkit.org/show_bug.cgi?id=160381
<rdar://problem/27328703>
Reviewed by Filip Pizlo.
Source/JavaScriptCore:
When setting large length values, we're currently treating ArrayClass as a
ContiguousIndexingType array. This results in an assertion failure. This is
now fixed.
There are currently only 2 places where we create arrays with indexing type
ArrayClass: ArrayPrototype and RuntimeArray. The fix in JSArray:;setLength()
takes care of ArrayPrototype.
RuntimeArray already checks for the setting of its length property, and will
throw a RangeError. Hence, there's no change is needed for the RuntimeArray.
Instead, I added some test cases ensure that the check and throw behavior does
not change without notice.
- runtime/JSArray.cpp:
(JSC::JSArray::setLength):
- tests/stress/array-setLength-on-ArrayClass-with-large-length.js: Added.
(toString):
(assertEqual):
- tests/stress/array-setLength-on-ArrayClass-with-small-length.js: Added.
(toString):
(assertEqual):
LayoutTests:
Test that RuntimeArrays will throw an error if we try to set its length.
- platform/mac/fast/dom/wrapper-classes-objc.html:
- platform/mac/fast/dom/wrapper-classes-objc-expected.txt:
- 5:46 PM Changeset in webkit [203951] by
-
- 6 edits in trunk/Source/WebCore
Unreviewed, rebaseline bindings tests.
- bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
(webkit_dom_test_obj_set_property): Deleted.
(webkit_dom_test_obj_get_property): Deleted.
(webkit_dom_test_obj_class_init): Deleted.
- bindings/scripts/test/GObject/WebKitDOMTestObj.h:
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjStrictTypeCheckingAttribute): Deleted.
(WebCore::jsTestObjStrictFloat): Deleted.
(WebCore::setJSTestObjStrictTypeCheckingAttribute): Deleted.
(WebCore::setJSTestObjStrictFloat): Deleted.
- bindings/scripts/test/ObjC/DOMTestObj.h:
- bindings/scripts/test/ObjC/DOMTestObj.mm:
(-[DOMTestObj strictTypeCheckingAttribute]): Deleted.
(-[DOMTestObj setStrictTypeCheckingAttribute:]): Deleted.
(-[DOMTestObj strictFloat]): Deleted.
(-[DOMTestObj setStrictFloat:]): Deleted.
- 5:29 PM Changeset in webkit [203950] by
-
- 18 edits in trunk
Enable strict type checking for Window dictionary members
https://bugs.webkit.org/show_bug.cgi?id=160356
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C test now that one more check is passing.
- web-platform-tests/dom/events/Event-subclasses-constructors-expected.txt:
Source/WebCore:
Enable strict type checking for Window dictionary members. Technically,
we should do strict type checking of all wrapper types but this patch
focuses on Window because it is common to pass a Window dictionary
member to Event constructors.
By strict type checking, I mean that we should throw a TypeError is
the value is not null/undefined and does not implement the Window
interface:
Firefox and Chrome comply with the specification already.
No new tests, updated / rebaselined existing tests.
- bindings/js/JSDictionary.cpp:
(WebCore::JSDictionary::convertValue):
LayoutTests:
Update existing tests to reflect behavior change.
- fast/events/constructors/composition-event-constructor-expected.txt:
- fast/events/constructors/composition-event-constructor.html:
- fast/events/constructors/focus-event-constructor-expected.txt:
- fast/events/constructors/focus-event-constructor.html:
- fast/events/constructors/keyboard-event-constructor-expected.txt:
- fast/events/constructors/keyboard-event-constructor.html:
- fast/events/constructors/mouse-event-constructor.html:
- fast/events/constructors/ui-event-constructor-expected.txt:
- fast/events/constructors/ui-event-constructor.html:
- fast/events/constructors/wheel-event-constructor.html:
- platform/mac/fast/events/constructors/mouse-event-constructor-expected.txt:
- platform/mac/fast/events/constructors/wheel-event-constructor-expected.txt:
- resources/js-test-pre.js:
Add a shouldThrowErrorName() utility function that is similar to shouldThrow()
but only checks the error name instead of the full error message. Checking
only the error name has the benefit of working across browsers and facilitating
refactoring of error messages.
- 5:23 PM Changeset in webkit [203949] by
-
- 43 edits in trunk
[WebIDL] Enable strict type checking for nullable attribute setters of wrapper types
https://bugs.webkit.org/show_bug.cgi?id=160375
Reviewed by Darin Adler.
Source/WebCore:
Enable strict type checking for nullable attribute setters of wrapper types:
For such attributes, if the JS tries to assign a value that is not null /
undefined and does not have the expected wrapper type, then we now throw a
TypeError instead of silently converting the value to null.
This behavior is consistent with Chrome and Firefox. It also helps identify
bugs in JavaScript code.
No new tests, updated existing tests.
- Modules/webaudio/AudioBufferSourceNode.idl:
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation):
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::setJSTestObjTestNullableObjAttr):
(WebCore::setJSTestObjMutablePoint):
(WebCore::setJSTestObjImmutablePoint):
- bindings/scripts/test/TestObj.idl:
- dom/Document.idl:
- html/HTMLTableElement.idl:
- svg/SVGAngle.idl:
- svg/SVGAnimatedBoolean.idl:
- svg/SVGAnimatedEnumeration.idl:
- svg/SVGAnimatedInteger.idl:
- svg/SVGAnimatedNumber.idl:
- svg/SVGLength.idl:
- svg/SVGMatrix.idl:
- svg/SVGNumber.idl:
- svg/SVGPathSegArcAbs.idl:
- svg/SVGPathSegArcRel.idl:
- svg/SVGPathSegCurvetoCubicAbs.idl:
- svg/SVGPathSegCurvetoCubicRel.idl:
- svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
- svg/SVGPathSegCurvetoCubicSmoothRel.idl:
- svg/SVGPathSegCurvetoQuadraticAbs.idl:
- svg/SVGPathSegCurvetoQuadraticRel.idl:
- svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
- svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
- svg/SVGPathSegLinetoAbs.idl:
- svg/SVGPathSegLinetoHorizontalAbs.idl:
- svg/SVGPathSegLinetoHorizontalRel.idl:
- svg/SVGPathSegLinetoRel.idl:
- svg/SVGPathSegLinetoVerticalAbs.idl:
- svg/SVGPathSegLinetoVerticalRel.idl:
- svg/SVGPathSegMovetoAbs.idl:
- svg/SVGPathSegMovetoRel.idl:
- svg/SVGPoint.idl:
- svg/SVGPreserveAspectRatio.idl:
- svg/SVGRect.idl:
LayoutTests:
Rebaseline / update existing tests to reflect behavior change.
- fast/speechsynthesis/speech-synthesis-crash-on-bad-utterance-expected.txt:
- fast/speechsynthesis/speech-synthesis-crash-on-bad-utterance.html:
- webaudio/convolver-setBuffer-null-expected.txt:
- webaudio/convolver-setBuffer-null.html:
- 2:12 PM Changeset in webkit [203948] by
-
- 2 edits in branches/safari-602-branch/LayoutTests
Merge r203947.
2016-07-30 Alexey Proskuryakov <ap@apple.com>
macOS Sierra test result gardening for media/video-loop.html.
- platform/mac/TestExpectations:
- 2:08 PM Changeset in webkit [203947] by
-
- 2 edits in trunk/LayoutTests
macOS Sierra test result gardening for media/video-loop.html.
- platform/mac/TestExpectations:
- 1:33 PM Changeset in webkit [203946] by
-
- 2 edits in branches/safari-602-branch/LayoutTests
Merge r203945.
2016-07-30 Alexey Proskuryakov <ap@apple.com>
macOS Sierra test result gardening.
- platform/mac-wk1/TestExpectations:
- 1:30 PM Changeset in webkit [203945] by
-
- 2 edits in trunk/LayoutTests
macOS Sierra test result gardening.
- platform/mac-wk1/TestExpectations:
- 12:27 PM Changeset in webkit [203944] by
-
- 2 edits in trunk/Source/WebKit2
[Xcode] WebKit.framework is touched on incremental build even if nothing’s changed
https://bugs.webkit.org/show_bug.cgi?id=160383
Reviewed by Tim Horton.
- WebKit2.xcodeproj/project.pbxproj: Removed the output files listed under the Copy iOS Sandbox Profiles for Manual Sandboxing script build phase, because it doesn’t produce those files on macOS. With no outputs listed, the script will still run every time, but the fact that it has run won’t trigger touching the framework.
- 12:27 PM Changeset in webkit [203943] by
-
- 4 edits2 adds in trunk
Synchronous preflight should check for successful responses
https://bugs.webkit.org/show_bug.cgi?id=159350
Patch by Youenn Fablet <youenn@apple.com> on 2016-07-30
Reviewed by Darin Adler.
Source/WebCore:
Test: http/tests/xmlhttprequest/access-control-preflight-not-successful.html
- loader/CrossOriginPreflightChecker.cpp:
(WebCore::CrossOriginPreflightChecker::doPreflight): Adding successful response check for synchronous
preflighting.
LayoutTests:
- http/tests/xmlhttprequest/access-control-preflight-not-successful-expected.txt: Added.
- http/tests/xmlhttprequest/access-control-preflight-not-successful.html: Added, not all tests are passing as CORS checks.
for redirections are not well supported for synchronous loading.
- http/tests/xmlhttprequest/resources/status-404-without-body.php:
- 7:16 AM Changeset in webkit [203942] by
-
- 2 edits in trunk/Tools
Unreviewed: add myself to the reviewers list.
- Scripts/webkitpy/common/config/contributors.json:
- 1:35 AM Changeset in webkit [203941] by
-
- 24 edits in trunk
[WebIDL] Enable strict type checking for operations' nullable parameters of wrapper types
https://bugs.webkit.org/show_bug.cgi?id=160374
Reviewed by Youenn Fablet.
LayoutTests/imported/w3c:
Rebaseline W3C test now that one more check is passing.
- web-platform-tests/dom/nodes/DOMImplementation-createDocument-expected.txt:
Source/WebCore:
Enable strict type checking for operations' nullable parameters of
wrapper types to comply with the Web IDL specification:
For such parameters, if the JS passes a value that is not null /
undefined and does not have the expected wrapper type, then we now
throw a TypeError instead of silently converting the value to null.
This behavior is consistent with Chrome and Firefox. It also helps
identify bugs in JavaScript code.
No new tests, rebaselined existing tests.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck):
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalNullableWrapper):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalNullableWrapperIsNull):
(WebCore::jsTestObjPrototypeFunctionMethodWithOptionalXPathNSResolver):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter1):
(WebCore::jsTestObjPrototypeFunctionOverloadedMethodWithOptionalParameter2):
(WebCore::jsTestObjPrototypeFunctionConvert2):
(WebCore::jsTestObjPrototypeFunctionStrictFunctionWithSequence):
(WebCore::jsTestObjPrototypeFunctionConditionalMethod3): Deleted.
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod5): Deleted.
(WebCore::jsTestObjPrototypeFunctionOverloadedMethod): Deleted.
(WebCore::jsTestObjPrototypeFunctionOrange): Deleted.
LayoutTests:
Update / rebaseline existing tests to reflect behavior change. Also fix
several bugs in tests that became obvious now that we throw.
- editing/execCommand/indent-pre-expected.txt:
- editing/execCommand/indent-pre.html:
- editing/selection/4895428-2.html:
- editing/selection/move-by-word-visually-null-box.html:
- fast/dom/DOMImplementation/detached-doctype.html:
- fast/dom/MutationObserver/observe-attributes.html:
- fast/dom/Node/contains-method-expected.txt:
- fast/dom/Node/script-tests/contains-method.js:
- fast/dom/Window/webkitConvertPoint.html:
- fast/dom/adopt-node-crash-2.html:
- fast/dom/incompatible-operations-expected.txt:
- fast/dom/incompatible-operations.html:
- fast/events/selectstart-by-arrow-keys.html:
- fast/images/image-copy-memory-usage.html:
- fast/xsl/xslt-processor-expected.txt:
- http/tests/misc/webtiming-cross-origin-and-back1.html:
- platform/mac/fast/dom/Window/webkitConvertPoint-expected.txt:
- svg/custom/unicode-in-tspan-multi-svg-crash.html:
Jul 29, 2016:
- 11:39 PM Changeset in webkit [203940] by
-
- 4 edits in trunk/Tools
Undo r203939, and copy over a rule that clips the logos.
Sierra wasn't the only logo without transparency.
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra.png:
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra@2x.png:
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
- 9:42 PM Changeset in webkit [203939] by
-
- 3 edits in trunk/Tools
The Sierra asset at build.webkit.org/dashboard/images/Sierra*.png has a white background
https://bugs.webkit.org/show_bug.cgi?id=160377
Patch by Alan Sien Wei Hshieh <hshieh@apple.com> on 2016-07-29
Reviewed by Brian Weinstein.
Update assets to remove the white background and use a transparent background instead.
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra.png:
- BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra@2x.png:
- 8:22 PM Changeset in webkit [203938] by
-
- 12 edits in trunk/Source/ThirdParty/ANGLE
ANGLE: Fix global constructors and exit-time destructors
<https://webkit.org/b/160332>
Reviewed by Darin Adler.
- Configurations/Base.xcconfig:
- Add warning flags.
- src/common/angleutils.cpp:
(FormatString):
- src/common/angleutils.h:
(MakeStaticString):
- src/common/debug.cpp:
- src/common/mathutil.cpp:
(gl::g_sharedexp_max):
(gl::convertRGBFloatsTo999E5):
- src/compiler/translator/ShaderLang.cpp:
(ShGetUniformRegisterMap):
- src/libANGLE/Caps.cpp:
(gl::TextureCapsMap::get):
- src/libANGLE/Device.cpp:
(egl::GetDeviceSet):
- src/libANGLE/Display.cpp:
(egl::Display::getClientExtensionString):
- src/libANGLE/formatutils.cpp:
(gl::BuildFormatMap):
(gl::BuildInternalFormatInfoMap):
(gl::GetInternalFormatMap):
(gl::BuildAllSizedInternalFormatSet):
(gl::GetSizedInternalFormat):
(gl::GetAllSizedInternalFormats):
- src/libANGLE/validationES3.cpp:
(gl::BuildES3FormatSet):
(gl::ValidateTexImageFormatCombination):
(gl::BuildSizedEffectiveInternalFormatList):
(gl::BuildUnsizedEffectiveInternalFormatList):
(gl::GetEffectiveInternalFormat):
(gl::BuildValidES3CopyTexImageCombinations):
(gl::IsValidES3CopyTexImageCombination):
- Fix global constructors and exit-time destructors.
- 7:02 PM Changeset in webkit [203937] by
-
- 3 edits in trunk/Source/JavaScriptCore
TypedArray super constructor has some incompatabilities
https://bugs.webkit.org/show_bug.cgi?id=160369
Reviewed by Filip Pizlo.
This patch fixes the length proprety of the TypedArray super constructor.
Additionally, the TypedArray super constructor should no longer be callable.
Also, this patch fixes the expected result of some test262 tests.
- runtime/JSTypedArrayViewConstructor.cpp:
(JSC::JSTypedArrayViewConstructor::finishCreation):
(JSC::constructTypedArrayView):
(JSC::JSTypedArrayViewConstructor::getCallData):
- tests/test262.yaml:
- 6:25 PM Changeset in webkit [203936] by
-
- 2 edits in trunk/Tools
Ignore most check-webkit-style checks for ANGLE project
<https://webkit.org/b/160333>
Reviewed by Daniel Bates.
- Scripts/webkitpy/style/checker.py: Ignore all checkers except:
- No tabs.
- No spaces at the end of lines.
- No carriage returns (DOS line endings).
- 6:08 PM Changeset in webkit [203935] by
-
- 15 edits2 adds in trunk
Window's named properties should be exposed on a WindowProperties object in its prototype
https://bugs.webkit.org/show_bug.cgi?id=160354
Reviewed by Gavin Barraclough.
LayoutTests/imported/w3c:
Rebaseline W3C test now that one more check is passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Window's named properties should be exposed on a WindowProperties object
in its prototype:
Firefox and Chrome both comply with the specification. However, WebKit
had no "WindowProperties" object in the Window prototype chain and the
named properties are exposed on the Window object itself.
No new tests, rebaselined existing tests.
- CMakeLists.txt:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSBindingsAllInOne.cpp:
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
(WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess): Deleted.
(WebCore::JSDOMWindow::put): Deleted.
(WebCore::JSDOMWindow::putByIndex): Deleted.
(WebCore::JSDOMWindow::getEnumerableLength): Deleted.
- bindings/js/JSDOMWindowProperties.cpp: Added.
(WebCore::jsDOMWindowPropertiesGetOwnPropertySlotNamedItemGetter):
(WebCore::JSDOMWindowProperties::getOwnPropertySlot):
(WebCore::JSDOMWindowProperties::getOwnPropertySlotByIndex):
- bindings/js/JSDOMWindowProperties.h: Added.
(WebCore::JSDOMWindowProperties::create):
(WebCore::JSDOMWindowProperties::createStructure):
(WebCore::JSDOMWindowProperties::JSDOMWindowProperties):
- bindings/js/JSDOMWindowShell.cpp:
(WebCore::JSDOMWindowShell::setWindow):
LayoutTests:
- fast/dom/Window/es52-globals-expected.txt:
Update / Rebaseline test now that named properties are no longer reported as "own"
properties on the Window object. I have verified that the test gives the
same result in Firefox and Chrome.
- fast/loader/window-clearing-expected.txt:
Rebaseline test that prints one more line because there is one more
object in Window's prototype chain.
- http/tests/security/window-named-proto-expected.txt:
- http/tests/security/window-named-valueOf-expected.txt:
Rebaseline 2 security tests that give slightly different output. The new
output is identical to the one in Firefox and Chrome. The tests are not
failing since they are not alert'ing content from the other frame.
The reason those tests were logging a security error is because we would
previously prevent named property access if the frame name conflicts with
a property name in the Window prototype, and we now no longer
differentiate this case.
- 5:54 PM Changeset in webkit [203934] by
-
- 2 edits in trunk/LayoutTests
Marking http/tests/xmlhttprequest/workers/methods-async.html as flaky on ios-simulator release WK2
https://bugs.webkit.org/show_bug.cgi?id=160368
Unreviewed test gardening.
- platform/ios-simulator-wk2/TestExpectations:
- 5:53 PM Changeset in webkit [203933] by
-
- 5 edits in branches/safari-602-branch/Source
Versioning.
- 5:39 PM Changeset in webkit [203932] by
-
- 3 edits1 copy1 move in trunk/LayoutTests
Rebaseline fast/block/float/overhanging-tall-block.html for Sierra.
Unreviewed test gardening.
- platform/mac-elcapitan/fast/block/float/overhanging-tall-block-expected.png: Renamed from LayoutTests/platform/mac/fast/block/float/overhanging-tall-block-expected.png.
- platform/mac-elcapitan/fast/block/float/overhanging-tall-block-expected.txt: Copied from LayoutTests/platform/mac/fast/block/float/overhanging-tall-block-expected.txt.
- platform/mac/TestExpectations:
- platform/mac/fast/block/float/overhanging-tall-block-expected.txt:
- 5:30 PM Changeset in webkit [203931] by
-
- 3 edits4 adds in trunk
Crash under HTMLMediaElement::{resolve, reject}PendingPlayPromises() when playback is interrupted
https://bugs.webkit.org/show_bug.cgi?id=160366
<rdar://problem/27317407>
Reviewed by Eric Carlson.
Source/WebCore:
Fixes a crash/assertion failure in DeferredWrapper::{resolve, rejectWithValue}() caused by a Promise
being settled twice. In particular, if a system interruption occurs when media.play() is invoked
the returned Promise may ultimately be settled twice upon cessation of the interruption.
A Promise can be settled (resolved) exactly once. When a system interruption occurs media
playback is paused and resumes on cessation of the interruption. Currently we also immediately
reject the Promise p retuned by media.play() if the interruption occurs during its invocation.
So, when we resume playback on cessation of an interruption we try to resolve p again. But a
Promise can only be resolved once and hence we violate the assertions that p has both a valid
reference to a JSPromiseDeferred object and a reference to the global object of the page.
Tests: media/non-existent-video-playback-interrupted.html
media/video-playback-interrupted.html
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::play): Modified to reject the Promise and return immediately if
playInternal() returns false.
(WebCore::HTMLMediaElement::playInternal): Treat an interruption as success and return true
so that HTMLMediaElement::play() adds the Promise to the end of the list of pending promises.
We treat an interruption as a success because we will resume playback (assuming the media
can be loaded and is well-formed) upon cessation of the interruption and therefore can either
fulfill or reject the Promise object returned by media.play().
LayoutTests:
- media/non-existent-video-playback-interrupted-expected.txt: Added.
- media/non-existent-video-playback-interrupted.html: Added.
- media/video-playback-interrupted-expected.txt: Added.
- media/video-playback-interrupted.html: Added.
- 5:13 PM Changeset in webkit [203930] by
-
- 2 edits in trunk/Source/WebCore
[iOS] HTMLMediaElement::updateVolume() calls MediaPlayer::volume() on null media player
https://bugs.webkit.org/show_bug.cgi?id=160353
Reviewed by Eric Carlson.
Using testing functions HTMLMediaElement::updateVolume() can be called on a <video> element
without an associated video. We should support this usage on iOS just as we do for non-iOS
ports.
The use of testing functions to call HTMLMediaElement::updateVolume() on a <video> element
without an associated video is demonstrated by the test LayoutTests/media/video-muted-after-setting-page-muted-state.html.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::updateVolume):
- 5:11 PM Changeset in webkit [203929] by
-
- 2 edits in trunk/LayoutTests
Land test expectations for rdar://problem/27611932.
- platform/mac-wk1/TestExpectations:
- 5:11 PM Changeset in webkit [203928] by
-
- 5 edits2 adds in trunk
Media controls are not displayed for some autoplaying videos at certain browser dimensions
https://bugs.webkit.org/show_bug.cgi?id=160360
<rdar://problem/27179484>
Reviewed by Myles C. Maxfield.
Source/WebCore:
Previously, if a video's aspect ratio fell outside of the range [0.5, 1.8], we would
not consider it main content and would subsequently not show media controls for it.
This meant that on many websites that scale video dimensions to match the mainframe,
if the mainframe is too wide (e.g. full bounds on a widescreen display) we would not
consider the video to be main content. To fix this, we only consider aspect ratio to
be a requirement if the video does not already take up most of the space in the
mainframe.
Covered by two new TestWebKitAPI unit tests.
- html/MediaElementSession.cpp:
(WebCore::isElementLargeRelativeToMainFrame):
(WebCore::isElementLargeEnoughForMainContent):
Tools:
Adds two tests verifying that videos may be considered main content as long as they
are large enough and cover a majority of the mainframe's viewport.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit2Cocoa/full-size-autoplaying-video-with-audio.html: Added.
- TestWebKitAPI/Tests/WebKit2Cocoa/skinny-autoplaying-video-with-audio.html: Added.
- 5:07 PM Changeset in webkit [203927] by
-
- 2 edits23 adds in trunk/LayoutTests
Test gardening on ios-simualtor after some media tests were unskipped in r203906.
Unreviewed test gardening.
- platform/ios-simulator/TestExpectations:
- platform/ios-simulator/media/audio-controls-rendering-expected.txt: Added.
- platform/ios-simulator/media/audio-repaint-expected.txt: Added.
- platform/ios-simulator/media/controls-strict-expected.txt: Added.
- platform/ios-simulator/media/controls-styling-strict-expected.txt: Added.
- platform/ios-simulator/media/controls-without-preload-expected.txt: Added.
- platform/ios-simulator/media/media-controls-clone-expected.txt: Added.
- platform/ios-simulator/media/track/track-cue-rendering-horizontal-expected.txt: Added.
- platform/ios-simulator/media/track/track-cue-rendering-vertical-expected.txt: Added.
- platform/ios-simulator/media/video-aspect-ratio-expected.txt: Added.
- platform/ios-simulator/media/video-controls-captions-trackmenu-expected.txt: Added.
- platform/ios-simulator/media/video-controls-captions-trackmenu-hide-on-click-expected.txt: Added.
- platform/ios-simulator/media/video-controls-captions-trackmenu-localized-expected.txt: Added.
- platform/ios-simulator/media/video-controls-captions-trackmenu-sorted-expected.txt: Added.
- platform/ios-simulator/media/video-controls-rendering-expected.txt: Added.
- platform/ios-simulator/media/video-display-toggle-expected.txt: Added.
- platform/ios-simulator/media/video-empty-source-expected.txt: Added.
- platform/ios-simulator/media/video-layer-crash-expected.txt: Added.
- platform/ios-simulator/media/video-no-audio-expected.txt: Added.
- platform/ios-simulator/media/video-transformed-expected.txt: Added.
- platform/ios-simulator/media/video-volume-slider-expected.txt: Added.
- platform/ios-simulator/media/video-zoom-controls-expected.txt: Added.
- platform/ios-simulator/media/video-zoom-expected.txt: Added.
- 5:07 PM Changeset in webkit [203926] by
-
- 1 copy in tags/Safari-602.1.44
New tag.
- 4:42 PM Changeset in webkit [203925] by
-
- 2 edits in trunk/Source/JavaScriptCore
Undefined Behavior in JSValue cast from NaN
https://bugs.webkit.org/show_bug.cgi?id=160322
Patch by Jonathan Bedard <Jonathan Bedard> on 2016-07-29
Reviewed by Mark Lam.
JSValues can be constructed from doubles, and in some cases, are deliberately constructed with NaN values.
In circumstances where NaN is bound through the default JSValue constructor, however, an undefined conversion
to int32_t occurs. While the subsequent if statement should fail and construct the JSValue through the explicit
double constructor, given that the deliberate use of NaN is fairly common, it seems that the jsNaN() function
should immediately call the explicit double constructor both for efficiency and to prevent inadvertent
suppressing of any other bugs which may be instantiating a JSValue with a NaN double.
- runtime/JSCJSValueInlines.h:
(JSC::jsNaN): Explicit double construction for NaN JSValues to avoid undefined behavior.
- 4:41 PM Changeset in webkit [203924] by
-
- 3 edits2 adds in trunk
Do not set negative rate on AVSampleBufferRenderSynchronizer.
https://bugs.webkit.org/show_bug.cgi?id=160326
<rdar://problem/27355214>
Reviewed by Eric Carlson.
Source/WebCore:
Test: http/tests/media/media-source/mediasource-play-then-seek-back-with-remote-control.html
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setRateDouble):
LayoutTests:
Negative rate is not supported at the moment.
- http/tests/media/media-source/mediasource-play-then-seek-back-with-remote-control-expected.txt: Added.
- http/tests/media/media-source/mediasource-play-then-seek-back-with-remote-control.html: Added.
- 3:04 PM Changeset in webkit [203923] by
-
- 7 edits in trunk/Source/JavaScriptCore
Refactor DFG::Node::hasLocal() to accessesStack()
https://bugs.webkit.org/show_bug.cgi?id=160357
Reviewed by Filip Pizlo.
Refactoring in preparation for using register arguments for JavaScript calls.
Renamed Node::hasLocal() to Node::accessesStack() and changed all uses accordingly.
Also changed uses of Node::hasVariableAccessData() to accessesStack() where that
use guards stack operation logic associated with the Node's VariableAccessData.
The hasVariableAccessData() check now implies no more than the node has a
VariableAccessData and nothing about its use of that data to coordinate stack
accesses.
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::methodOfGettingAValueProfileFor):
- dfg/DFGLiveCatchVariablePreservationPhase.cpp:
(JSC::DFG::LiveCatchVariablePreservationPhase::handleBlock):
- dfg/DFGMaximalFlushInsertionPhase.cpp:
(JSC::DFG::MaximalFlushInsertionPhase::treatRegularBlock):
(JSC::DFG::MaximalFlushInsertionPhase::treatRootBlock):
- dfg/DFGNode.h:
(JSC::DFG::Node::containsMovHint):
(JSC::DFG::Node::accessesStack):
(JSC::DFG::Node::hasLocal): Deleted.
- dfg/DFGPredictionInjectionPhase.cpp:
(JSC::DFG::PredictionInjectionPhase::run):
- dfg/DFGValidate.cpp:
- 3:01 PM Changeset in webkit [203922] by
-
- 4 edits in trunk/LayoutTests
[macOS Sierra] Test gardening after r198859
https://bugs.webkit.org/show_bug.cgi?id=160358
<rdar://problem/26422274>
Reviewed by Zalan Bujtas.
RTL Scrollbars are not enabled on WK1, so this test should be marked in the
same way as all the other RTL scrollbars tests.
- TestExpectations:
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 1:58 PM Changeset in webkit [203921] by
-
- 6 edits in trunk/Source/JavaScriptCore
[JSC] Use the same data structures for DFG and Air Liveness Analysis
https://bugs.webkit.org/show_bug.cgi?id=160346
Reviewed by Geoffrey Garen.
In Air, we minimized memory accesses during liveness analysis
with a couple of tricks:
-Use a single Sparse Set ADT for the live value of each block.
-Manipulate compact positive indices instead of hashing values.
This patch brings the same ideas to DFG.
This patch still uses the same fixpoint algorithms.
The reason is Edge's KillStatus used by other phases. We cannot
use a block-boundary liveness algorithm and update KillStatus
simultaneously. It's something I'll probably revisit at some point.
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::forAllValues):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::dump):
- dfg/DFGBasicBlock.h:
- dfg/DFGGraph.h:
(JSC::DFG::Graph::maxNodeCount):
(JSC::DFG::Graph::nodeAt):
- dfg/DFGInPlaceAbstractState.cpp:
(JSC::DFG::setLiveValues):
(JSC::DFG::InPlaceAbstractState::endBasicBlock):
- dfg/DFGLivenessAnalysisPhase.cpp:
(JSC::DFG::LivenessAnalysisPhase::LivenessAnalysisPhase):
(JSC::DFG::LivenessAnalysisPhase::run):
(JSC::DFG::LivenessAnalysisPhase::processBlock):
(JSC::DFG::LivenessAnalysisPhase::addChildUse):
(JSC::DFG::LivenessAnalysisPhase::process): Deleted.
- 1:43 PM Changeset in webkit [203920] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: Inactive/active network bar segments overlap when latency is zero
https://bugs.webkit.org/show_bug.cgi?id=160147
<rdar://problem/27516007>
Reviewed by Joseph Pecoraro.
TimelineRecordBar should hide the inactive segment when its duration
is less than the minimum displayable size. The active segment can
assume the whole width of the bar.
- UserInterface/Views/TimelineOverviewGraph.js:
(WebInspector.TimelineOverviewGraph.prototype.get secondsPerPixel):
Make secondsPerPixel available during TimelineRecordBars.refresh.
- UserInterface/Views/TimelineRecordBar.js:
(WebInspector.TimelineRecordBar.prototype.refresh):
Check inactive duration against the minimum display size,
and add/remove DOM nodes and bar styles as needed.
- 1:29 PM Changeset in webkit [203919] by
-
- 2 edits in trunk/LayoutTests
Remove a Sierra specific expectation for http/tests/navigation/forward-and-cancel.html,
we already have an identical one in platform/mac.
- platform/mac-wk1/TestExpectations:
- 1:18 PM Changeset in webkit [203918] by
-
- 2 edits in trunk/LayoutTests
Skip some media tests that fail on iOS
- platform/ios-simulator/TestExpectations:
- 12:46 PM Changeset in webkit [203917] by
-
- 2 edits in trunk/LayoutTests
[macOS Sierra] Unskip new emoji group candidates tests
https://bugs.webkit.org/show_bug.cgi?id=160351
<rdar://problem/27430381>
Reviewed by Alexey Proskuryakov.
- platform/mac/TestExpectations:
- 12:45 PM Changeset in webkit [203916] by
-
- 6 edits in trunk
Backspace key removes only the rainbow from the rainbow flag
https://bugs.webkit.org/show_bug.cgi?id=160349
<rdar://problem/27594995>
Reviewed by Dean Jackson.
Source/WebCore:
In r203330 I added support for new emoji group candidates. I accidentally
missed one of the new emoji code points.
Test: editing/deleting/delete-emoji.html
- platform/text/CharacterProperties.h:
(WebCore::isEmojiGroupCandidate):
LayoutTests:
- platform/mac/editing/deleting/delete-emoji-expected.txt:
- platform/mac-yosemite/editing/deleting/delete-emoji-expected.txt:
- platform/ios-simulator/editing/deleting/delete-emoji-expected.txt:
- 12:27 PM Changeset in webkit [203915] by
-
- 2 edits in trunk/Tools
Gardening: removed unused variable.
Not reviewed.
- TestWebKitAPI/Tests/WTF/StringView.cpp:
(TestWebKitAPI::TEST):
- 12:19 PM Changeset in webkit [203914] by
-
- 5 edits in branches/safari-602-branch/Source/WebCore
Merge r203904. rdar://problem/27610935
- 12:11 PM Changeset in webkit [203913] by
-
- 11 edits2 adds in trunk
AX: Media controls accessibility improvement
https://bugs.webkit.org/show_bug.cgi?id=160223
<rdar://problem/27558003>
Reviewed by Eric Carlson.
Source/WebCore:
Changes in this patch:
- Added a change observer for volume slider so that it will handle accessibility increment/decrement functions correctly.
- Update the timer div's aria-label when time changes.
- Added a keydown handler for left/right arrow adjusting the timeline, so that the value increment/decrement in a reasonable way.
- Changed the mute button's role to checkbox since it only has on/off states.
Test: media/media-controls-accessibility.html
- Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.createControls):
(Controller.prototype.updatePictureInPictureButton):
(Controller.prototype.timelineStepFromVideoDuration):
(Controller.prototype.incrementTimelineValue):
(Controller.prototype.decrementTimelineValue):
(Controller.prototype.showInlinePlaybackPlaceholderWhenSafe):
(Controller.prototype.handleTimelineMouseUp):
(Controller.prototype.handleTimelineKeyDown):
(Controller.prototype.handleMuteButtonClicked):
(Controller.prototype.handleMinButtonClicked):
(Controller.prototype.handleMaxButtonClicked):
(Controller.prototype.updateVideoVolume):
(Controller.prototype.handleVolumeSliderInput):
(Controller.prototype.handleVolumeSliderChange):
(Controller.prototype.handleVolumeSliderMouseDown):
(Controller.prototype.updateTime):
(Controller.prototype.updateControlsWhileScrubbing):
(Controller.prototype.updateVolume):
LayoutTests:
- accessibility/mac/video-volume-slider-accessibility-expected.txt:
- accessibility/mac/video-volume-slider-accessibility.html:
- accessibility/media-emits-object-replacement-expected.txt:
- media/media-controls-accessibility-expected.txt: Added.
- media/media-controls-accessibility.html: Added.
- platform/efl/accessibility/media-element-expected.txt:
- platform/efl/accessibility/media-emits-object-replacement-expected.txt:
- platform/gtk/accessibility/media-element-expected.txt:
- platform/gtk/accessibility/media-emits-object-replacement-expected.txt:
- platform/mac/accessibility/media-element-expected.txt:
- 11:58 AM Changeset in webkit [203912] by
-
- 5 edits in trunk/Source/WebInspectorUI
REGRESSION (r195456): Web Inspector: Changing tabs in Styles sidebar shouldn't change sidebar's width
https://bugs.webkit.org/show_bug.cgi?id=159646
<rdar://problem/27286338>
Reviewed by Brian Burg.
Remember sidebar width on per tab basis. For example, Node, Styles, and Layers sidebar panels in
Elements tab should all have the same width, but Resource sidebar panel in Debugger tab should NOT
share its width Element tab's sidebar.
TabContentView stores the width but TabBrowser manages saving and restoring it.
The same way collapsed sidebar state is handled.
- UserInterface/Views/Sidebar.js:
(WebInspector.Sidebar.prototype.set collapsed):
Don't change sidebar's width when sidebar panels change.
(WebInspector.Sidebar.prototype._recalculateWidth):
(WebInspector.Sidebar.prototype.set selectedSidebarPanel): Deleted.
Pass newWidth as an argument so it can be saved in TabBrowser.
- UserInterface/Views/SidebarPanel.js:
(WebInspector.SidebarPanel): Deleted.
(WebInspector.SidebarPanel.prototype.get savedWidth): Deleted.
(WebInspector.SidebarPanel.prototype.sizeDidChange): Deleted.
Remove the per sidebar panel width setting that was added in r195456.
- UserInterface/Views/TabBrowser.js:
(WebInspector.TabBrowser):
(WebInspector.TabBrowser.prototype._detailsSidebarWidthDidChange):
(WebInspector.TabBrowser.prototype._showDetailsSidebarPanelsForTabContentView):
- UserInterface/Views/TabContentView.js:
(WebInspector.TabContentView):
(WebInspector.TabContentView.prototype.get detailsSidebarWidthSetting):
Store details sidebar width on TabContentView.
- 11:52 AM Changeset in webkit [203911] by
-
- 2 edits in trunk/Source/WTF
Make StringView capable of being passed or returned in only 2 registers.
https://bugs.webkit.org/show_bug.cgi?id=160344
Reviewed by Geoffrey Garen.
We just need to #if out copy and move constructors and assignment operators.
After this change, the following test code:
JS_EXPORT_PRIVATE StringView returnStringView(StringView sv)
{
return sv;
}
... compiles to the following for x86_64:
ZN3JSC16returnStringViewEN3WTF10StringViewE:
000000000093fb20 pushq %rbp
000000000093fb21 movq %rsp, %rbp
000000000093fb24 movq %rdi, %rax Copy from arg word 0 to ret word 0.
000000000093fb27 movq %rsi, %rdx Copy from arg word 1 to ret word 1.
000000000093fb2a popq %rbp
000000000093fb2b retq
... and this for arm64:
ZN3JSC16returnStringViewEN3WTF10StringViewE:
0000000000818504 ret arg word 0 and 1 are in the same regs as ret word 0 and 1.
- wtf/text/StringView.h:
(WTF::StringView::StringView):
(WTF::StringView::~StringView):
(WTF::StringView::operator=):
- 11:47 AM Changeset in webkit [203910] by
-
- 2 edits in trunk/Source/WebCore
Remove an unused line of code.
https://bugs.webkit.org/show_bug.cgi?id=160350
Reviewed by Simon Fraser.
No new tests because there's no behavior change. Just removing dead code.
SVGInlineTextBox::paintText() instantiates a local variable selectionTextRun.
Thanks to analysis by Said Abou-Hallawa, we know that selectionTextRun
was introduced in https://trac.webkit.org/changeset/61393, but was later
rendered unused in https://trac.webkit.org/changeset/62099 because we
switched to using paintTextWithShadows() with the selectionStyle. Hence,
selectionTextRun can be removed.
- rendering/svg/SVGInlineTextBox.cpp:
(WebCore::SVGInlineTextBox::paintText):
- 11:45 AM Changeset in webkit [203909] by
-
- 2 edits in trunk/Source/WebKit2
Crash with an Invalid Web Process IPC Message ID: WebPageProxy.AttributedStringForCharacterRangeCallback
https://bugs.webkit.org/show_bug.cgi?id=160334
<rdar://problem/27078089>
Reviewed by Alexey Proskuryakov.
The crash is most likely caused by an MESSAGE_CHECK failure in WebPageProxy::attributedStringForCharacterRangeCallback
which marks the currently dispatching message was invalid inside the macro.
Make sure we never fail this check by sending an empty EditingRange in attributedSubstringForCharacterRangeAsync when
the editing range we're about to send to the UIProcess is invalid in WebProcess.
Unfortunately, no new tests since we don't have any reproduction and I couldn't spot any code path in which we end up
with an invalid EditingRage here with multiple inspection of the relevant code.
- WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::attributedSubstringForCharacterRangeAsync):
- 11:40 AM Changeset in webkit [203908] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Assertion in NetworkGridContentView when updating data grid for the first time
https://bugs.webkit.org/show_bug.cgi?id=160330
<rdar://problem/27600905>
Reviewed by Brian Burg.
When the first grid node is added, a view layout and current time update
are scheduled. A view layout occurring before the current time is updated
should be skipped, since the ruler end time hasn't been set.
- UserInterface/Views/NetworkGridContentView.js:
(WebInspector.NetworkGridContentView.prototype.layout):
Skip layout until current time is updated.
(WebInspector.NetworkGridContentView.prototype._update):
Remove unused variablesstartTime
andendTime
. Don't force a layout
if the elapsed time is zero.
- 11:38 AM Changeset in webkit [203907] by
-
- 3 edits1 delete in trunk/Source
Remove PassRef.h after r177259
https://bugs.webkit.org/show_bug.cgi?id=160348
Reviewed by Andreas Kling.
Source/WebKit/win:
- WebCoreSupport/WebVisitedLinkStore.h:
Source/WTF:
- wtf/PassRef.h: Removed.
- 10:54 AM Changeset in webkit [203906] by
-
- 3 edits in trunk/LayoutTests
Unskip some media tests on iOS when run in WebKitTestRunner
As a step towards running the various media tests on iOS, unskip LayoutTests/media
when run in WebKitTestRunner in the iOS Simulator. Incorporate the reasons we skip some
of the iOS tests from r189372. For now continue to skip LayoutTest/media when run in
DumpRenderTree in the iOS Simulator as many tests crash and are otherwise flaky. Further
investigation is required.
- platform/ios-simulator-wk1/TestExpectations:
- platform/ios-simulator/TestExpectations:
- 10:49 AM Changeset in webkit [203905] by
-
- 2 edits in trunk/Tools
Add TestWebKitAPI support for interacting with media controls
https://bugs.webkit.org/show_bug.cgi?id=160342
<rdar://problem/27610246>
Reviewed by Beth Dakin.
Adds support for testing interaction with some media controls, as well as a basic test
verifying that media control teardown after interaction does not result in a crash.
- TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
(-[WKWebView mouseDownAtPoint:]):
(-[WKWebView performAfterLoading:]):
(TestWebKitAPI::TEST):
- 10:47 AM Changeset in webkit [203904] by
-
- 5 edits in trunk/Source/WebCore
Change internal AVCaptureDeviceType typedef name
https://bugs.webkit.org/show_bug.cgi?id=160345
<rdar://problem/27610935>
Reviewed by Dean Jackson.
- platform/mediastream/mac/AVAudioCaptureSource.mm:
(WebCore::AVAudioCaptureSource::create): AVCaptureDeviceType -> AVCaptureDeviceTypedef
(WebCore::AVAudioCaptureSource::AVAudioCaptureSource): Ditto.
- platform/mediastream/mac/AVCaptureDeviceManager.mm:
(WebCore::AVCaptureDeviceManager::captureDeviceList): Ditto.
(WebCore::shouldConsiderDeviceInDeviceList): Ditto.
(WebCore::AVCaptureDeviceManager::refreshCaptureDeviceList): Ditto.
(WebCore::AVCaptureDeviceManager::createMediaSourceForCaptureDeviceWithConstraints): Ditto.
(WebCore::AVCaptureDeviceManager::deviceConnected): Ditto.
(WebCore::AVCaptureDeviceManager::deviceDisconnected): Ditto.
(-[WebCoreAVCaptureDeviceManagerObserver deviceDisconnected:]): Ditto.
- platform/mediastream/mac/AVMediaCaptureSource.mm:
(WebCore::globaVideoCaptureSerialQueue): Ditto.
(WebCore::AVMediaCaptureSource::AVMediaCaptureSource): Ditto.
- platform/mediastream/mac/AVVideoCaptureSource.mm:
(WebCore::AVVideoCaptureSource::create): Ditto.
(WebCore::AVVideoCaptureSource::AVVideoCaptureSource): Ditto.
- 10:38 AM Changeset in webkit [203903] by
-
- 2 edits in trunk/Source/WebCore
color-gamut media query returns incorrect results
https://bugs.webkit.org/show_bug.cgi?id=160166
<rdar://problem/27537577>
Reviewed by Darin Adler.
While I was unable to reproduce the originator's issue,
we communicated via email and it might have been related
to a customized color space calibration on an external
display.
Anyway, I took this opportunity to update to use the
more appropriate API for detection on macOS Sierra.
Covered by the existing fast/media/mq-color-gamut.html test.
- platform/mac/PlatformScreenMac.mm:
(WebCore::screenSupportsExtendedColor): Use NSScreen canRepresentDisplayGamut.
- 10:19 AM Changeset in webkit [203902] by
-
- 4 edits in trunk
Crash Log Clobbering on Unbound Crashes
https://bugs.webkit.org/show_bug.cgi?id=160198
<rdar://problem/27472618>
Patch by Jonathan Bedard <Jonathan Bedard> on 2016-07-29
Reviewed by Alexey Proskuryakov.
- Scripts/webkitpy/common/system/crashlogs.py:
(CrashLogs): Fix header order.
- Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(TestResultWriter.output_filename): Only remove file extension if it is clearly a file extension.
- 10:00 AM Changeset in webkit [203901] by
-
- 5 edits4 adds in trunk
HTMLVideoElement with MediaStream src shows paused image when all video tracks are disabled
https://bugs.webkit.org/show_bug.cgi?id=160222
<rdar://problem/27557313>
Patch by George Ruan <gruan@apple.com> on 2016-07-29
Reviewed by Eric Carlson.
Source/WebCore:
Tests: fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html
fast/mediastream/MediaStream-video-element-video-tracks-disabled.html
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::enqueueVideoSampleBufferFromTrack): Change criteria to enqueue a
Sample Buffer to the AVSampleBufferDisplayLayer to allow an initial frame to be shown.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::shouldEnqueueVideoSampleBuffer): Allow an initial frame to be shown.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::flushAndRemoveVideoSampleBuffers): Removes all buffers from the
AVSampleBufferDisplayLayer.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::ensureLayer): Make the AVSampleBufferDisplayLayer's background black.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updateDisplayMode): Remove all buffers from the AVSampleBufferDisplayLayer
when state of MediaPlayerPrivateMediaStreamAVFObjC is changed to None of PaintItBlack.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updatePausedImage): Updates paused image.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::pause): Calls updatePausedImage.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::paintCurrentFrameInContext): Allow an initial frame to be painted to canvas.
LayoutTests:
- fast/mediastream/MediaStream-video-element-video-tracks-disabled-expected.html: Added.
- fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled-expected.txt: Added.
- fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html: Added. Checks
that the video frames display captured media if all video tracks were disabled and then a single
video track is re-enabled. This test also checks that an initial frame is painted to
canvas if the video has not yet been played.
- fast/mediastream/MediaStream-video-element-video-tracks-disabled.html: Added. Reference tests the
frames of the video to be black, since the canvas is painted black regardless of the state of the video frames
if displayMode of MediaPlayerPrivateMediaStreamAVFObjC is PaintItBlack.
- platform/mac-wk2/TestExpectations: MediaStream-video-element-video-tracks-disabled.html fails on El
Capitan due to incorrect behavior of AVSampleBufferDisplayLayer's API call flushAndRemoveImage.
- 7:12 AM Changeset in webkit [203900] by
-
- 16 edits in trunk
[Fetch API] Activate credentials mode
https://bugs.webkit.org/show_bug.cgi?id=160292
Patch by Youenn Fablet <youenn@apple.com> on 2016-07-29
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
- web-platform-tests/fetch/api/cors/cors-cookies-expected.txt:
- web-platform-tests/fetch/api/cors/cors-cookies-worker-expected.txt:
- web-platform-tests/fetch/api/cors/cors-cookies.js: Fixin otherRemote computation.
(corsCookies): ensuring cookie clean-up is done in case of error before going to the next test.
- web-platform-tests/fetch/api/cors/cors-redirect-credentials-expected.txt:
- web-platform-tests/fetch/api/cors/cors-redirect-credentials-worker-expected.txt:
- web-platform-tests/fetch/api/credentials/cookies-expected.txt:
- web-platform-tests/fetch/api/credentials/cookies-worker-expected.txt:
Source/WebCore:
Covered by updated and rebased tests.
Previously the allowCredentials option was computed by DocumentThreadableLoader clients.
This option is really similar to the credentials flag in the fetch specification and should be handled at lower levels.
In the future, it might be good to retire that option.
In case of Omit mode, we need to explicitely disable cookies in DocumentThreadableLoader.
This should be updated so that ResourceLoader does it, depending on credential flag being set or not.
Updated DocumentThreadableLoader clients to only use FetchOptions::Credentials.
This allows to link code more easely to specification.
- Modules/fetch/FetchLoader.cpp:
(WebCore::FetchLoader::start): Removing use of allowCredentials option. Using FetchOptions::Credentials instead.
- fileapi/FileReaderLoader.cpp:
(WebCore::FileReaderLoader::start): Ditto.
- inspector/InspectorNetworkAgent.cpp:
(WebCore::InspectorNetworkAgent::loadResource): Ditto.
- loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Computing allowCredentials from FetchOptions::Credentials.
(WebCore::DocumentThreadableLoader::loadRequest): Enabling cookie only if allowed to use credentials. This is in
particular useful for FetchOptions::Credentials::Omit mode.
- page/EventSource.cpp:
(WebCore::EventSource::connect): Removing use of allowCredentials option. Using FetchOptions::Credentials instead.
- workers/WorkerScriptLoader.cpp:
(WebCore::WorkerScriptLoader::loadSynchronously): Ditto.
(WebCore::WorkerScriptLoader::loadAsynchronously): Ditto.
- xml/XMLHttpRequest.cpp: Ditto.
(WebCore::XMLHttpRequest::createRequest):
- 7:00 AM MathML/Early_2016_Refactoring edited by
- (diff)
- 4:08 AM Changeset in webkit [203899] by
-
- 18 edits4 copies1 delete in trunk
CrossOrigin preflight checker should compute the right Access-Control-Request-Headers value
https://bugs.webkit.org/show_bug.cgi?id=160028
Patch by Youenn Fablet <youenn@apple.com> on 2016-07-29
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
- web-platform-tests/fetch/api/cors/cors-no-preflight-expected.txt:
- web-platform-tests/fetch/api/cors/cors-no-preflight-worker-expected.txt:
- web-platform-tests/fetch/api/cors/cors-no-preflight.js:
(corsNoPreflight): fixing bugs in that test and adding new test to cover mime type checking that should ignore case.
- web-platform-tests/fetch/api/cors/cors-preflight-worker.html:
- web-platform-tests/fetch/api/cors/cors-preflight.html:
- web-platform-tests/fetch/api/cors/cors-preflight.js:
(corsPreflight): Adding safe headers to the request and checking more precisely sent Access-Control-Request-Headers header value.
Source/WebCore:
Covered by updated test.
Computing Access-Control-Request-Headers value according https://fetch.spec.whatwg.org/#cors-preflight-fetch:
- Remove safe headers
- lowercase header names
- sort lexicographically header names
The only difference is that we keep separating headers with ', ' instead of ',' as per the spec.
Also, some headers that might be safe are still marked as unsafe (DPR, Downlink...).
Moved setting of Origin header after preflighting, consistently with fetch spec.
- loader/CrossOriginAccessControl.cpp:
(WebCore::createAccessControlPreflightRequest): Implementing new computation of Access-Control-Request-Headers.
- loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequest): Removing call to updateRequestForAccessControl (which sets Origin header value).
(WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): Adding call to updateRequestForAccessControl.
(WebCore::DocumentThreadableLoader::preflightSuccess): Ditto.
- platform/network/HTTPParsers.cpp:
(WebCore::isCrossOriginSafeRequestHeader): Helper routine to implement https://fetch.spec.whatwg.org/#cors-safelisted-request-header.
- platform/network/HTTPParsers.h:
LayoutTests:
Rebasing regular tests. Also updating skipped worker tests.
- platform/ios-simulator-wk2/imported/w3c/web-platform-tests/fetch/api/cors/cors-no-preflight-expected.txt: Added.
- platform/ios-simulator-wk2/imported/w3c/web-platform-tests/fetch/api/cors/cors-no-preflight-worker-expected.txt: Added.
- platform/ios-simulator-wk2/imported/w3c/web-platform-tests/fetch/api/cors/cors-preflight-redirect-worker-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/fetch/api/cors/cors-no-preflight-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/fetch/api/cors/cors-no-preflight-worker-expected.txt: Added.
- platform/mac-wk2/imported/w3c/web-platform-tests/fetch/api/cors/cors-preflight-redirect-worker-expected.txt: Added.
- platform/mac/TestExpectations:
- 3:49 AM MathML/Early_2016_Refactoring edited by
- (diff)
- 2:58 AM Changeset in webkit [203898] by
-
- 2 edits in trunk/Tools
Update for contributors.json
https://bugs.webkit.org/show_bug.cgi?id=160294
Patch by Tibor Meszaros <tmeszaros.u-szeged@partner.samsung.com> on 2016-07-29
- Scripts/webkitpy/common/config/contributors.json:
- 12:59 AM Changeset in webkit [203897] by
-
- 2 edits in trunk/Source/JavaScriptCore
Unreviewed, ByValInfo is only used in JIT enabled environments
https://bugs.webkit.org/show_bug.cgi?id=158908
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::stronglyVisitStrongReferences):
- 12:37 AM MathML/Early_2016_Refactoring edited by
- (diff)
- 12:21 AM Changeset in webkit [203896] by
-
- 6 edits in trunk/Source/WebCore
Parse the operator text on the MathMLOperatorElement class.
https://bugs.webkit.org/show_bug.cgi?id=160241
Patch by Frederic Wang <fwang@igalia.com> on 2016-07-29
Reviewed by Darin Adler.
The text of the MathML operators is important to determine form or dictionary properties and
hence provide default values when no explicit attributes are privided. Since that text only
depends on the MathML DOM content, it makes sense to move its parsing into
MathMLOperatorElement. Anonymous operators created by the mfenced elements still need to be
handled specially and this will be true for all the operator properties that can just be
determined in MathMLOperatorElement. Hence in a follow-up patch we will introduce a class
to move all the code specific to mfenced in a class derived from RenderMathMLOperator while
we continue to move the corresponding code for non-anonymous into MathMLOperatorElement.
No new tests, behavior is unchanged.
- mathml/MathMLOperatorElement.cpp: Include header for hyphenMinus/minusSign characters.
(WebCore::MathMLOperatorElement::parseOperatorText): Move that code from rebuildTokenContent
(WebCore::MathMLOperatorElement::operatorText): Helper function to get the cached text.
(WebCore::MathMLOperatorElement::childrenChanged): Make the cached text dirty.
- mathml/MathMLOperatorElement.h: Update defitions and add a member for the operator text.
- mathml/MathMLTextElement.h: Make childrenChanged overridable.
- rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::element): Helper function to cast to a MathMLOperatorElement.
(WebCore::RenderMathMLOperator::textContent): Helper function to call
MathMLOperatorElement::operatorText or fallback to m_textContent for anonymous operators.
m_textContent and this special case can be moved into a derived class later.
(WebCore::RenderMathMLOperator::setOperatorProperties): Call textContent().
(WebCore::RenderMathMLOperator::computePreferredLogicalWidths): Ditto.
(WebCore::RenderMathMLOperator::rebuildTokenContent): Remove the string parameter and the
parsing of the operator text.
(WebCore::RenderMathMLOperator::updateTokenContent): Call textContent(). The special function
for anonymous operators also parses the text content but this could be moved into a derived
class later.
(WebCore::RenderMathMLOperator::shouldAllowStretching): Call textContent().
(WebCore::RenderMathMLOperator::useMathOperator): Ditto.
(WebCore::RenderMathMLOperator::RenderMathMLOperator): No need to initialize m_textContent
as it is not used anymore for non-anonymous renderers.
- rendering/mathml/RenderMathMLOperator.h: Update definitions and call textContent().
- 12:15 AM Changeset in webkit [203895] by
-
- 33 edits1 add in trunk/Source/JavaScriptCore
JSC::Symbol should be hash-consed
https://bugs.webkit.org/show_bug.cgi?id=158908
Reviewed by Filip Pizlo.
Previously, SymbolImpls held by symbols represent identity of symbols.
When we check the equality between symbols, we need to load SymbolImpls of symbols and compare them.
This patch performs hash-consing onto the symbols. We cache symbols in per-VM's SymbolImpl-keyed WeakGCMap.
When creating a new symbol from SymbolImpl, we first query to this map and reuse the previously created symbol
if it is found. This ensures that one-on-one correspondence between SymbolImpl and symbol. So now, we can use
pointer-comparison to query the equality of symbols.
This change drops SymbolImpl loads when checking the equality. Furthermore, we can use DFG CheckCell to symbol
when we would like to ensure that the given value is the expected symbol. This cleans up GetByVal's symbol-keyd
caching. Then, we changed CheckIdent to CheckStringIdent since it only checks the string case now. The symbol
case is handled by CheckCell.
Additionally, this patch also cleans up Map / Set implementation since we can use the logic for JSCell to symbols.
The performance effects in the related benchmarks are the followings.
baseline patch
bigswitch-indirect-symbol-or-undefined 85.6214+-1.0063 63.0522+-0.8615 definitely 1.3579x faster
bigswitch-indirect-symbol 84.9653+-0.6258 80.4900+-0.8008 definitely 1.0556x faster
fold-put-by-val-with-symbol-to-multi-put-by-offset
9.4396+-0.3726 9.2941+-0.3311 might be 1.0157x faster
inlined-put-by-val-with-symbol-transition
49.5477+-0.2401 ? 49.7533+-0.3369 ?
get-by-val-with-symbol-self-or-proto 11.9740+-0.0798 ? 12.1706+-0.2723 ? might be 1.0164x slower
get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple
4.1364+-0.0841 4.0872+-0.0925 might be 1.0120x faster
put-by-val-with-symbol 11.3709+-0.0223 11.3613+-0.0264
get-by-val-with-symbol-proto-or-self 11.8984+-0.0706 ? 11.9030+-0.0787 ?
polymorphic-put-by-val-with-symbol 31.4176+-0.0558 31.3825+-0.0447
implicit-bigswitch-indirect-symbol 61.3115+-0.6577 58.0098+-0.1212 definitely 1.0569x faster
get-by-val-with-symbol-bimorphic-check-structure-elimination-simple
3.3139+-0.0565 2.9947+-0.0732 definitely 1.1066x faster
get-by-val-with-symbol-chain-from-try-block
2.2316+-0.0179 2.2137+-0.0210
get-by-val-with-symbol-bimorphic-check-structure-elimination
10.6031+-0.2216 10.0939+-0.1977 definitely 1.0504x faster
get-by-val-with-symbol-check-structure-elimination
8.5576+-0.1521 7.7107+-0.1308 definitely 1.1098x faster
put-by-val-with-symbol-slightly-polymorphic
3.1957+-0.0538 2.9181+-0.0708 definitely 1.0951x faster
put-by-val-with-symbol-replace-and-transition
11.8253+-0.0757 11.6590+-0.0351 definitely 1.0143x faster
<geometric> 13.3911+-0.0527 12.7376+-0.0457 definitely 1.0513x faster
- bytecode/ByValInfo.h:
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::stronglyVisitStrongReferences):
- dfg/DFGAbstractInterpreterInlines.h:
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
- dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::foldConstants):
- dfg/DFGDoesGC.cpp:
(JSC::DFG::doesGC):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGNode.h:
(JSC::DFG::Node::hasUidOperand):
- dfg/DFGNodeType.h:
- dfg/DFGPredictionPropagationPhase.cpp:
- dfg/DFGSafeToExecute.h:
(JSC::DFG::safeToExecute):
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileSymbolEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleSymbolEquality):
(JSC::DFG::SpeculativeJIT::compileCheckStringIdent):
(JSC::DFG::SpeculativeJIT::extractStringImplFromBinarySymbols): Deleted.
(JSC::DFG::SpeculativeJIT::compileCheckIdent): Deleted.
(JSC::DFG::SpeculativeJIT::compileSymbolUntypedEquality): Deleted.
- dfg/DFGSpeculativeJIT.h:
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compileSymbolUntypedEquality):
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compileSymbolUntypedEquality):
(JSC::DFG::SpeculativeJIT::compile):
- ftl/FTLAbstractHeapRepository.h:
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileCheckStringIdent):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
(JSC::FTL::DFG::LowerDFGToB3::compileCheckIdent): Deleted.
(JSC::FTL::DFG::LowerDFGToB3::lowSymbolUID): Deleted.
- jit/JIT.h:
- jit/JITOperations.cpp:
(JSC::tryGetByValOptimize):
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emitPutByValWithCachedId):
(JSC::JIT::emitByValIdentifierCheck):
(JSC::JIT::privateCompileGetByValWithCachedId):
(JSC::JIT::privateCompilePutByValWithCachedId):
(JSC::JIT::emitIdentifierCheck): Deleted.
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emitGetByValWithCachedId):
(JSC::JIT::emitPutByValWithCachedId):
- runtime/JSCJSValue.cpp:
(JSC::JSValue::dumpInContextAssumingStructure):
- runtime/JSCJSValueInlines.h:
(JSC::JSValue::equalSlowCaseInline):
(JSC::JSValue::strictEqualSlowCaseInline): Deleted.
- runtime/JSFunction.cpp:
(JSC::JSFunction::setFunctionName):
- runtime/MapData.h:
- runtime/MapDataInlines.h:
(JSC::JSIterator>::clear): Deleted.
(JSC::JSIterator>::find): Deleted.
(JSC::JSIterator>::add): Deleted.
(JSC::JSIterator>::remove): Deleted.
(JSC::JSIterator>::replaceAndPackBackingStore): Deleted.
- runtime/Symbol.cpp:
(JSC::Symbol::finishCreation):
(JSC::Symbol::create):
- runtime/Symbol.h:
- runtime/VM.cpp:
(JSC::VM::VM):
- runtime/VM.h:
- tests/stress/symbol-equality-over-gc.js: Added.
(shouldBe):
(test):
- 12:13 AM Changeset in webkit [203894] by
-
- 2 edits1 add in branches/safari-602-branch/Source/JavaScriptCore
Merge r203851. rdar://problem/27299339
- 12:13 AM Changeset in webkit [203893] by
-
- 2 edits in branches/safari-602-branch/Source/WebCore
Merge r203825. rdar://problem/27578447
- 12:12 AM Changeset in webkit [203892] by
-
- 2 edits1 add in branches/safari-602-branch/Source/JavaScriptCore
Merge r203793. rdar://problem/27572612
- 12:12 AM Changeset in webkit [203891] by
-
- 2 edits1 add in branches/safari-602-branch/Source/JavaScriptCore
Merge r203790. rdar://problem/27328525
- 12:12 AM Changeset in webkit [203890] by
-
- 2 edits in branches/safari-602-branch/Source/WebCore
Merge r203789. rdar://problem/27574519
- 12:12 AM Changeset in webkit [203889] by
-
- 2 edits in branches/safari-602-branch/Source/WebKit2
Merge r203780. rdar://problem/27569255
- 12:12 AM Changeset in webkit [203888] by
-
- 4 edits in branches/safari-602-branch/Source/WebCore
Merge r203801. rdar://problem/26102954
- 12:12 AM Changeset in webkit [203887] by
-
- 5 edits4 adds in branches/safari-602-branch
Merge r203764. rdar://problem/27434423
- 12:12 AM Changeset in webkit [203886] by
-
- 2 edits in branches/safari-602-branch/Source/WebCore
Merge r203775. rdar://problem/23325160
- 12:12 AM Changeset in webkit [203885] by
-
- 2 edits in branches/safari-602-branch/Tools
Merge r203755. rdar://problem/23325160
- 12:12 AM Changeset in webkit [203884] by
-
- 16 edits2 adds in branches/safari-602-branch
Merge r203743. rdar://problem/23325160
- 12:12 AM Changeset in webkit [203883] by
-
- 24 edits in branches/safari-602-branch
Merge r203855. rdar://problem/27557968
- 12:12 AM Changeset in webkit [203882] by
-
- 28 edits2 adds in branches/safari-602-branch
Merge r203752. rdar://problem/27557968
- 12:12 AM Changeset in webkit [203881] by
-
- 2 edits in branches/safari-602-branch/Source/WebCore
Merge r203746. rdar://problem/27527151
- 12:12 AM Changeset in webkit [203880] by
-
- 3 edits in branches/safari-602-branch/Source/WebKit2
Merge r203741. rdar://problem/27480873
- 12:12 AM Changeset in webkit [203879] by
-
- 2 edits in branches/safari-602-branch/Source/WebCore
Merge r203737. rdar://problem/21090897
- 12:12 AM Changeset in webkit [203878] by
-
- 2 edits in branches/safari-602-branch/Source/WebKit2
Merge r203724. rdar://problem/27536113
- 12:12 AM Changeset in webkit [203877] by
-
- 7 edits in branches/safari-602-branch
Merge r203711. rdar://problem/27279453
- 12:11 AM Changeset in webkit [203876] by
-
- 2 edits in branches/safari-602-branch/Source/WebCore
Merge r203706. rdar://problem/27457941
- 12:11 AM Changeset in webkit [203875] by
-
- 6 edits2 adds in branches/safari-602-branch
Merge r203698. rdar://problem/26986673
- 12:11 AM Changeset in webkit [203874] by
-
- 7 edits in branches/safari-602-branch/Tools
Merge r203700. rdar://problem/27010112
- 12:11 AM Changeset in webkit [203873] by
-
- 3 edits2 moves1 add1 delete in branches/safari-602-branch
Merge r203695. rdar://problem/27010112
- 12:11 AM Changeset in webkit [203872] by
-
- 3 edits2 adds in branches/safari-602-branch
Merge r203694. rdar://problem/27220338
- 12:11 AM Changeset in webkit [203871] by
-
- 7 edits3 adds in branches/safari-602-branch
Merge r203690. rdar://problem/26668526
- 12:11 AM Changeset in webkit [203870] by
-
- 4 edits in branches/safari-602-branch/Source/WebKit2
Merge r203687. rdar://problem/27399998
- 12:11 AM Changeset in webkit [203869] by
-
- 2 edits in branches/safari-602-branch/Source/WebCore
Merge r203683. rdar://problem/27525634
- 12:11 AM Changeset in webkit [203868] by
-
- 2 edits in branches/safari-602-branch/Source/WebInspectorUI
Merge r203673. rdar://problem/27517481
- 12:11 AM Changeset in webkit [203867] by
-
- 3 edits in branches/safari-602-branch/Source/WebKit2
Merge r203671. rdar://problem/27409315
- 12:11 AM Changeset in webkit [203866] by
-
- 3 edits2 adds in branches/safari-602-branch
Merge r203669. rdar://problem/27285070
- 12:11 AM Changeset in webkit [203865] by
-
- 3 edits2 adds in branches/safari-602-branch
Merge r203667. rdar://problem/27506489
- 12:11 AM Changeset in webkit [203864] by
-
- 2 edits in branches/safari-602-branch/Source/WebInspectorUI
Merge r203636. rdar://problem/27431121
- 12:11 AM Changeset in webkit [203863] by
-
- 5 edits in branches/safari-602-branch/Source/WebKit2
Merge r203635. rdar://problem/27505943
- 12:11 AM Changeset in webkit [203862] by
-
- 7 edits in branches/safari-602-branch/Source
Merge r203631. rdar://problem/24606557
- 12:11 AM Changeset in webkit [203861] by
-
- 3 edits in branches/safari-602-branch/Source/WebKit2
Merge r203630. rdar://problem/27504958
- 12:11 AM Changeset in webkit [203860] by
-
- 4 edits in branches/safari-602-branch
Merge r203629. rdar://problem/27438936
- 12:11 AM Changeset in webkit [203859] by
-
- 4 edits2 adds in branches/safari-602-branch
Merge r203622. rdar://problem/27495748
Jul 28, 2016:
- 11:45 PM Changeset in webkit [203858] by
-
- 21 edits in trunk
Binding generator should expose the visible interface name in error messages
https://bugs.webkit.org/show_bug.cgi?id=160192
Source/WebCore:
Patch by Youenn Fablet <youenn@apple.com> on 2016-07-28
Reviewed by Darin Adler.
Covered by updated layout and binding tests.
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateImplementation): Using visibleInterfaceName instead of interfaceName.
(GenerateFunctionCastedThis): Ditto.
(GenerateParametersCheck): Ditto.
(GenerateConstructorDefinition): Ditto.
- bindings/scripts/test/JS/JSTestObj.cpp: Rebased.
- bindings/scripts/test/TestObj.idl: Adding ConstructorCallWith to exercice change in GenerateConstructorDefinition.
LayoutTests:
Patch by Youenn Fablet <youennf@gmail.com> on 2016-07-28
Reviewed by Darin Adler.
- editing/selection/extend-expected.txt:
- fast/dom/Window/getComputedStyle-missing-parameter-expected.txt:
- fast/dom/Window/getComputedStyle-missing-parameter.html:
- fetch/fetch-error-messages-expected.txt:
- fetch/fetch-error-messages.html: Adding test for Request.
- js/dom/toString-and-valueOf-override-expected.txt:
- js/getOwnPropertyDescriptor-unforgeable-attributes-expected.txt:
- js/getOwnPropertyDescriptor-window-attributes-expected.txt:
- media/encrypted-media/encrypted-media-v2-syntax-expected.txt:
- media/encrypted-media/encrypted-media-v2-syntax.html:
- webaudio/createMediaStreamSource-null-expected.txt:
- webaudio/createMediaStreamSource-null.html:
- webaudio/decode-audio-data-basic-expected.txt:
- webaudio/decode-audio-data-basic.html:
- webaudio/mediaelementaudiosourcenode-expected.txt:
- webaudio/mediaelementaudiosourcenode.html:
- 10:22 PM Changeset in webkit [203857] by
-
- 17 edits in trunk/Source
Split calculateCacheSizes in two methods
https://bugs.webkit.org/show_bug.cgi?id=160237
Reviewed by Darin Adler.
Source/WebCore:
Rename getVolumeFreeSizeForPath as volumeFreeSizeForPath and make it available to all platforms adding an
implementation for mac.
- platform/FileSystem.h:
- platform/efl/FileSystemEfl.cpp:
(WebCore::volumeFreeSizeForPath):
(WebCore::getVolumeFreeSizeForPath): Deleted.
- platform/glib/FileSystemGlib.cpp:
(WebCore::volumeFreeSizeForPath):
(WebCore::getVolumeFreeSizeForPath): Deleted.
- platform/mac/FileSystemMac.mm:
(WebCore::volumeFreeSizeForPath):
- platform/win/FileSystemWin.cpp:
(WebCore::volumeFreeSizeForPath):
Source/WebKit2:
It's used to calculate memory and disk cache sizes, but only the web process is interested in memory caches, and
the network process in disk cache. We can also avoid a lot of duplicated code between ports to set the cache model.
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::setCacheModel): Use calculateURLCacheSizes to set the disk cache size and call
platformSetURLCacheSize if not set to allow ports to setup platform specific cache.
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::platformSetURLCacheSize): Remove common code that is now in cross-platform file.
(WebKit::volumeFreeSize): Deleted.
(WebKit::NetworkProcess::platformSetCacheModel): Renamed to platformSetURLCacheSize().
- NetworkProcess/soup/NetworkProcessSoup.cpp:
(WebKit::NetworkProcess::platformSetURLCacheSize): Remove common code that is now in cross-platform file.
(WebKit::getCacheDiskFreeSize): Deleted.
(WebKit::NetworkProcess::platformSetCacheModel): Renamed to platformSetURLCacheSize().
- Shared/CacheModel.cpp:
(WebKit::calculateMemoryCacheSizes): Calculate the memory and page cache sizes.
(WebKit::calculateURLCacheSizes): Calculate the disk cache size.
(WebKit::calculateCacheSizes): Deleted.
- Shared/CacheModel.h:
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess): Tell the page cache to clear backing stores for GTK+ port too. This was done before when
setting the cache model.
(WebKit::WebProcess::setCacheModel): Use calculateMemoryCacheSizes to setup memory caches and call
platformSetCacheModel to allow ports do more setup according to the cache model.
(WebKit::WebProcess::clearResourceCaches): Deleted.
- WebProcess/WebProcess.h:
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformSetCacheModel): Remove common code that is now in cross-platform file.
(WebKit::volumeFreeSize): Deleted.
(WebKit::WebProcess::platformClearResourceCaches): Deleted.
- WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformSetCacheModel): Remove common code that is now in cross-platform file.
(WebKit::WebProcess::platformInitializeWebProcess):
(WebKit::WebProcess::platformClearResourceCaches): Deleted.
- 10:16 PM Changeset in webkit [203856] by
-
- 5 edits in trunk/Source/WebKit2
Database Process: ASSERTION FAILED: paths.size() == handles.size() with SANDBOX_EXTENSIONS disabled
https://bugs.webkit.org/show_bug.cgi?id=160188
Reviewed by Sergio Villar Senin.
This happens in ports with sandbox extensions disabled, and it's making several tests to crash in debug
builds. The SandboxExtension implementation is empty in case of building with sandbox extensions disabled, so
that we are actually allocating no extensions at all in
NetworkProcessProxy::grantSandboxExtensionsToDatabaseProcessForBlobs(). When the message arrives to database
process, we have a list of paths, but an empty list of hanldes which causes the assertion. We can just avoid
that message entirely in case of building without sandbox extensions.
- DatabaseProcess/DatabaseProcess.cpp:
- DatabaseProcess/DatabaseProcess.h:
- DatabaseProcess/DatabaseProcess.messages.in:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::grantSandboxExtensionsToDatabaseProcessForBlobs):
- 10:14 PM UpdatingANGLE edited by
- (diff)
- 8:03 PM Changeset in webkit [203855] by
-
- 24 edits in trunk
Remove deprecated SPI for video inline / fullscreen controls
https://bugs.webkit.org/show_bug.cgi?id=160318
Reviewed by Tim Horton.
Source/WebCore:
r203752 deprecated the SPI allowsInlineMediaPlaybackWithPlaysInlineAttribute
and allowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute (in favor of
inlineMediaPlaybackRequiresPlaysInlineAttribute). This patch removes the
deprecated SPI symbols.
No new tests because there is no behavior change.
- page/Settings.cpp:
- page/Settings.in:
- testing/InternalSettings.cpp:
(WebCore::InternalSettings::Backup::Backup): Deleted.
(WebCore::InternalSettings::Backup::restoreTo): Deleted.
(WebCore::InternalSettings::setAllowsInlineMediaPlaybackWithPlaysInlineAttribute): Deleted.
(WebCore::InternalSettings::setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute): Deleted.
- testing/InternalSettings.h:
- testing/InternalSettings.idl:
Source/WebKit/mac:
- WebView/WebPreferenceKeysPrivate.h:
- WebView/WebPreferences.mm:
(+[WebPreferences initialize]): Deleted.
(-[WebPreferences allowsInlineMediaPlaybackWithPlaysInlineAttribute]): Deleted.
(-[WebPreferences setAllowsInlineMediaPlaybackWithPlaysInlineAttribute:]): Deleted.
(-[WebPreferences allowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute]): Deleted.
(-[WebPreferences setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute:]): Deleted.
- WebView/WebPreferencesPrivate.h:
- WebView/WebView.mm:
(-[WebView _preferencesChanged:]): Deleted.
Source/WebKit2:
- Shared/WebPreferencesDefinitions.h:
- UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetAllowsInlineMediaPlaybackWithPlaysInlineAttribute): Deleted.
(WKPreferencesGetAllowsInlineMediaPlaybackWithPlaysInlineAttribute): Deleted.
(WKPreferencesSetAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute): Deleted.
(WKPreferencesGetAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute): Deleted.
- UIProcess/API/C/WKPreferencesRefPrivate.h:
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _initializeWithConfiguration:]): Deleted.
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration init]): Deleted.
(-[WKWebViewConfiguration copyWithZone:]): Deleted.
(-[WKWebViewConfiguration _allowsInlineMediaPlaybackWithPlaysInlineAttribute]): Deleted.
(-[WKWebViewConfiguration _setAllowsInlineMediaPlaybackWithPlaysInlineAttribute:]): Deleted.
(-[WKWebViewConfiguration _allowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute]): Deleted.
(-[WKWebViewConfiguration _setAllowsInlineMediaPlaybackWithWebKitPlaysInlineAttribute:]): Deleted.
- UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
- WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences): Deleted.
Tools:
- DumpRenderTree/mac/DumpRenderTree.mm:
(setDefaultsToConsistentValuesForTesting): Deleted.
- TestWebKitAPI/Tests/WebKit2Cocoa/RequiresUserActionForPlayback.mm:
(RequiresUserActionForPlaybackTest::SetUp): Deleted.
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues): Deleted.
- WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::initializeWebViewConfiguration): Deleted.
- 7:09 PM Changeset in webkit [203854] by
-
- 2 edits in trunk/Tools
[iOS] TestWebKitAPI bundle targets are not code signed
https://bugs.webkit.org/show_bug.cgi?id=160328
<rdar://problem/27409246>
Patch by Daniel Bates <dabates@apple.com> on 2016-07-28
Reviewed by Andy Estes.
Workaround <rdar://problem/27459890> by explicitly defining Xcode build settings
CODE_SIGNING_ALLOWED and AD_HOC_CODE_SIGNING_ALLOWED to be YES so as to allow the
the TestWebKitAPI bundle targets to be code signed when building for the iOS simulator.
- TestWebKitAPI/Configurations/Base.xcconfig:
- 6:23 PM Changeset in webkit [203853] by
-
- 2 edits1 add in trunk/Source/JavaScriptCore
ASSERTION FAILED in errorProtoFuncToString() when Error name is a single char string.
https://bugs.webkit.org/show_bug.cgi?id=160324
<rdar://problem/27389572>
Reviewed by Keith Miller.
The issue is that errorProtoFuncToString() was using jsNontrivialString() to
generate the error string even when the name string can be a single character
string. This is incorrect. We should be using jsString() instead.
- runtime/ErrorPrototype.cpp:
(JSC::errorProtoFuncToString):
- tests/stress/errors-with-simple-names-or-messages-should-not-crash-toString.js: Added.
- 6:19 PM Changeset in webkit [203852] by
-
- 9 edits2 adds in trunk
Add support for Element.getAttributeNames()
https://bugs.webkit.org/show_bug.cgi?id=160327
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
Rebaseline several W3C tests now that more checks are passing.
- web-platform-tests/dom/interfaces-expected.txt:
- web-platform-tests/dom/nodes/attributes-expected.txt:
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Add support for Element.getAttributeNames():
Firefox already supports this, Chrome 52 does not yet.
Test: fast/dom/Element/getAttributeNames.html
- bindings/js/JSDOMBinding.h:
(WebCore::JSValueTraits<AtomicString>::arrayJSValue):
- dom/Element.cpp:
(WebCore::Element::getAttributeNames):
- dom/Element.h:
- dom/Element.idl:
LayoutTests:
Add layout test coverage. I have verified that this test is passing in
Firefox 47.
- fast/dom/Element/getAttributeNames-expected.txt: Added.
- fast/dom/Element/getAttributeNames.html: Added.
- 5:30 PM Changeset in webkit [203851] by
-
- 2 edits1 add in trunk/Source/JavaScriptCore
ARM64: Fused left shift with a right shift can create NaNs from integers
https://bugs.webkit.org/show_bug.cgi?id=160329
Reviewed by Geoffrey Garen.
When we fuse a left shift and a right shift of integers where the shift amounts
are the same and the size of the quantity being shifted is 8 bits, we rightly
generate a sign extend byte instruction. On ARM64, we were sign extending
to a 64 bit quantity, when we really wanted to sign extend to a 32 bit quantity.
Checking the ARM64 marco assembler and we were extending to 64 bits for all
four combinations of zero / sign and 8 / 16 bits.
- assembler/MacroAssemblerARM64.h:
(JSC::MacroAssemblerARM64::zeroExtend16To32):
(JSC::MacroAssemblerARM64::signExtend16To32):
(JSC::MacroAssemblerARM64::zeroExtend8To32):
(JSC::MacroAssemblerARM64::signExtend8To32):
- tests/stress/regress-160329.js: New test added.
(narrow):
- 4:52 PM Changeset in webkit [203850] by
-
- 2 edits in trunk/Tools
Disable WebKit2.ResizeWithHiddenContentDoesNotHang for now
- TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
(animatedResizeWebView):
(TEST):
This test times out only when run in the WebKit Testing simulator environment,
but not in a fresh simulator. Disabling to keep the bots green while under investigation.
- 4:29 PM Changeset in webkit [203849] by
-
- 8 edits in trunk
window.open.length should be 0
https://bugs.webkit.org/show_bug.cgi?id=160323
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C test now that one more check is passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
window.open.length should be 0 as all its parameters are optional:
It is 2 in WebKit. Firefox and Chrome agree with the specification and return 0.
No new tests, rebaselined existing test.
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::open):
Minor code optimization.
- page/DOMWindow.idl:
Update IDL to match the specification and our custom implementation.
This makes us return the right "length" value.
LayoutTests:
Update existing test to reflect behavior change.
- js/dom/function-length-expected.txt:
- js/dom/function-length.html:
- 4:15 PM Changeset in webkit [203848] by
-
- 11 edits in trunk
Parameters to Event.initEvent() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160320
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C tests now that more checks are passing.
- web-platform-tests/dom/interfaces-expected.txt:
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Parameters to Event.initEvent() should be mandatory:
Firefox agrees with the specification. Chrome does not.
No new tests, rebaselined existing tests.
- dom/Event.idl:
Source/WebInspectorUI:
Update WebInspector accordingly.
- UserInterface/Models/NativeFunctionParameters.js:
LayoutTests:
Update existing tests to make sure they call initEvent() will all 3
parameters.
- fast/dom/HTMLObjectElement/beforeload-set-text-crash.xhtml:
- fast/forms/form-submission-create-crash.xhtml:
- js/arity-mismatch-at-vmentry.html:
- 3:21 PM Changeset in webkit [203847] by
-
- 8 edits in trunk/Source
Move a Mail.app workaround closer to where it's actually needed
https://bugs.webkit.org/show_bug.cgi?id=160317
Reviewed by Tim Horton.
Source/WebCore:
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadArchive):
- platform/network/cf/ResourceRequest.h:
- platform/network/cocoa/ResourceRequestCocoa.mm:
(WebCore::ResourceRequest::applyWebArchiveHackForMail): Deleted.
- platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::applyWebArchiveHackForMail): Deleted.
Source/WebKit/mac:
- WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::dispatchWillSendRequest):
- WebView/WebFrame.mm:
(-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Deleted.
- 3:17 PM Changeset in webkit [203846] by
-
- 4 edits in trunk
2 first parameters to window.postMessage() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160319
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
2 first parameters to window.postMessage() should be mandatory:
Firefox and Chrome agree with the specification.
No new tests, rebaselined existing test.
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::handlePostMessage):
- 3:05 PM Changeset in webkit [203845] by
-
- 11 edits in trunk
First parameter to canvas.getContext() / probablySupportsContext() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160312
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline several W3C tests now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
- web-platform-tests/html/semantics/embedded-content/the-canvas-element/context.arguments.missing-expected.txt:
Source/WebCore:
First parameter to canvas.getContext() / probablySupportsContext()
should be mandatory:
Firefox and Chrome agree with the specification for getContext().
Neither of them supports probablySupportsContext().
No new tests, rebaselined existing tests.
- bindings/js/JSHTMLCanvasElementCustom.cpp:
(WebCore::JSHTMLCanvasElement::getContext):
(WebCore::JSHTMLCanvasElement::probablySupportsContext):
- html/HTMLCanvasElement.idl:
Source/WebInspectorUI:
Update WebInspector accordingly.
- UserInterface/Models/NativeFunctionParameters.js:
LayoutTests:
Update existing test to reflect behavior change.
- fast/canvas/webgl/canvas-supports-context-expected.txt:
- fast/canvas/webgl/canvas-supports-context.html:
- 2:51 PM Changeset in webkit [203844] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Hiding a column which contains a TimelineRuler as the headerview, doesn't hide the headerView
https://bugs.webkit.org/show_bug.cgi?id=160093
<rdar://problem/27499300>
Reviewed by Joseph Pecoraro.
- UserInterface/Views/DataGrid.js:
(WebInspector.DataGrid.prototype._positionHeaderViews):
Remove early return so that a header view in a hidden column will have
its width resized to zero, matching the column.
- 2:38 PM Changeset in webkit [203843] by
-
- 5 edits in trunk/Source/WebInspectorUI
Web Inspector: Waterfall view should be visible in Network tab and Network Timeline
https://bugs.webkit.org/show_bug.cgi?id=160061
Patch by Johan K. Jensen <johan_jensen@apple.com> on 2016-07-28
Reviewed by Joseph Pecoraro.
Adds a Timeline-column (waterfall) to the Network tab and Network Timeline.
- Localizations/en.lproj/localizedStrings.js:
Add "Timeline" localized string.
- UserInterface/Views/NetworkGridContentView.js:
(WebInspector.NetworkGridContentView):
Add the Timeline-column with a TimelineRuler as the headerview,
and properties for updating current time.
(WebInspector.NetworkGridContentView.prototype.get secondsPerPixel):
(WebInspector.NetworkGridContentView.prototype.get startTime):
(WebInspector.NetworkGridContentView.prototype.get currentTime):
(WebInspector.NetworkGridContentView.prototype.get endTime):
Acting as a graphDataSource used by TimelineDataGridNode.
(WebInspector.NetworkGridContentView.prototype.shown):
(WebInspector.NetworkGridContentView.prototype.reset):
(WebInspector.NetworkGridContentView.prototype.layout):
Refresh graphs and update the TimelineRuler on layout changes.
(WebInspector.NetworkGridContentView.prototype._networkTimelineRecordAdded):
Add listeners for when resources are finished to stop the timer.
(WebInspector.NetworkGridContentView.prototype._update):
(WebInspector.NetworkGridContentView.prototype._startUpdatingCurrentTime):
(WebInspector.NetworkGridContentView.prototype._stopUpdatingCurrentTime):
Adding a timer which updates the TimelineRuler and the layout
if any non-finished requests are running.
- UserInterface/Views/NetworkTimelineView.js:
(WebInspector.NetworkTimelineView):
Add the Timeline-column with a TimelineRuler as the headerview.
(WebInspector.NetworkTimelineView.prototype.get secondsPerPixel):
(WebInspector.NetworkTimelineView.prototype.layout):
Refresh graphs on layout changes.
- UserInterface/Views/TimelineDataGrid.css:
(.tree-outline.timeline-data-grid .item:hover .subtitle):
(.data-grid.timeline th):
(.data-grid.timeline th.graph-column > .timeline-ruler):
(.data-grid.timeline td.graph-column):
(.data-grid.timeline td.graph-column > .cell-content):
(.data-grid.timeline td.graph-column .timeline-record-bar):
- 2:19 PM Changeset in webkit [203842] by
-
- 13 edits2 adds in trunk
Frequent animation lags when interacting with Safari (sidebar, tab switching, etc.)
https://bugs.webkit.org/show_bug.cgi?id=160289
<rdar://problem/27553464>
Reviewed by Simon Fraser.
API Tests: WebKit2.AnimatedResizeDoesNotHang, WebKit2.ResizeWithHiddenContentDoesNotHang
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _didCommitLayerTree:]):
Avoid calling _endAnimatedResize when a commit comes in when we haven't yet received
a dynamic viewport update reply (and thus don't have a transaction ID to wait on).
Previously, in this case, _resizeAnimationTransformTransactionID would be 0,
and *any* commit would cause _endAnimatedResize to be called, causing us to always
fall into the worst-case sync wait.
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::synchronizeDynamicViewportUpdate):
Make use of waitForDidUpdateViewState instead of having a separate waitForAndDispatchImmediately
here, because it knows to do things like dispatch the didUpdate message if it's still
pending. This also shortens the sync wait timeout from 1s to 500ms, which makes it
consistent with e.g. the newly-parented-view timeout duration, and should be nothing
but positive.
- Platform/IPC/Connection.cpp:
(IPC::Connection::timeoutRespectingIgnoreTimeoutsForTesting):
(IPC::Connection::waitForMessage):
(IPC::Connection::sendSyncMessageFromSecondaryThread):
(IPC::Connection::waitForSyncReply):
- Platform/IPC/Connection.h:
(IPC::Connection::ignoreTimeoutsForTesting):
- UIProcess/API/APIProcessPoolConfiguration.cpp:
(API::ProcessPoolConfiguration::copy):
- UIProcess/API/APIProcessPoolConfiguration.h:
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
(-[_WKProcessPoolConfiguration ignoreSynchronousMessagingTimeoutsForTesting]):
(-[_WKProcessPoolConfiguration setIgnoreSynchronousMessagingTimeoutsForTesting:]):
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::processDidFinishLaunching):
Add a mechanism for clients to cause all synchronous message timeouts to be effectively infinite.
The new API tests use this to ensure that the test will time out if they ever enter
the bad state (otherwise, the shorter sync wait timeout could make the test still pass).
- TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm: Added.
(-[AnimatedResizeNavigationDelegate _webView:renderingProgressDidChange:]):
(-[AnimatedResizeWebView _endAnimatedResize]):
(animatedResizeWebView):
(TEST):
- TestWebKitAPI/Tests/WebKit2Cocoa/blinking-div.html: Added.
Add two tests that ensure that hidden-content and animated resizes
don't cause unnecessary synchronous waits. Only the hidden-content
one fails before my patch, but it seemed reasonable to add both anyway.
- 2:17 PM Changeset in webkit [203841] by
-
- 2 edits in trunk/Source/WebKit/mac
Use a RetainPtr in WebFrameLoaderClient::assignIdentifierToInitialRequest
https://bugs.webkit.org/show_bug.cgi?id=160315
Reviewed by Tim Horton.
- WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::assignIdentifierToInitialRequest):
- 2:07 PM Changeset in webkit [203840] by
-
- 10 edits in trunk
Parameter to table.deleteRow() / body.deleteRow() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160307
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Parameter to table.deleteRow() / body.deleteRow() should be mandatory:
- https://html.spec.whatwg.org/multipage/tables.html#the-table-element
- https://html.spec.whatwg.org/multipage/tables.html#htmltablesectionelement
Firefox and Chrome agree with the specification.
No new tests, rebaselined existing test.
- html/HTMLTableElement.idl:
- html/HTMLTableSectionElement.idl:
Source/WebInspectorUI:
Update WebInspector accordingly.
- UserInterface/Models/NativeFunctionParameters.js:
LayoutTests:
Update existing test to reflect behavior change.
- fast/dom/non-numeric-values-numeric-parameters-expected.txt:
- fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
- 2:02 PM Changeset in webkit [203839] by
-
- 4 edits4 deletes in trunk
Unreviewed, rolling out r203826.
https://bugs.webkit.org/show_bug.cgi?id=160314
The test added with this change fails on El Capitan WK2.
(Requested by ryanhaddad on #webkit).
Reverted changeset:
"HTMLVideoElement with MediaStream src shows paused image when
all video tracks are disabled"
https://bugs.webkit.org/show_bug.cgi?id=160222
http://trac.webkit.org/changeset/203826
Patch by Commit Queue <commit-queue@webkit.org> on 2016-07-28
- 1:56 PM Changeset in webkit [203838] by
-
- 3 edits in branches/safari-602-branch/LayoutTests
2016-07-28 Alexey Proskuryakov <ap@apple.com>
macOS Sierra test result gardening.
- platform/mac-wk1/TestExpectations:
- platform/mac/TestExpectations:
- 1:55 PM Changeset in webkit [203837] by
-
- 3 edits in trunk/LayoutTests
macOS Sierra test result gardening.
- platform/mac-wk1/TestExpectations:
- platform/mac/TestExpectations:
- 1:54 PM Changeset in webkit [203836] by
-
- 10 edits in trunk
2 first parameters to input.setSelectionRange() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160310
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
2 first parameters to input.setSelectionRange() should be mandatory:
Calling this method without the 2 first parameters makes little
sense.
Firefox agrees with the specification, Chrome does not.
No new tests, rebaselined existing test.
- bindings/js/JSHTMLInputElementCustom.cpp:
(WebCore::JSHTMLInputElement::setSelectionRange):
- html/HTMLInputElement.idl:
Source/WebInspectorUI:
Update WebInspector accordingly.
- UserInterface/Models/NativeFunctionParameters.js:
LayoutTests:
Update existing test to reflect behavior change.
- fast/dom/non-numeric-values-numeric-parameters-expected.txt:
- fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
- 1:40 PM Changeset in webkit [203835] by
-
- 2 edits in trunk/Source/WebCore
Remove an unnecessary comment from UUID.h
https://bugs.webkit.org/show_bug.cgi?id=160313
Reviewed by Simon Fraser.
- platform/UUID.h:
- 1:28 PM Changeset in webkit [203834] by
-
- 3 edits1 add in trunk/Source
StringView should have an explicit m_is8Bit field.
https://bugs.webkit.org/show_bug.cgi?id=160282
<rdar://problem/27327943>
Reviewed by Benjamin Poulain.
Source/JavaScriptCore:
- tests/stress/string-joining-long-strings-should-not-crash.js: Added.
(catch):
Source/WTF:
The current implementation reserves 1 bit in the 32-bit m_length field as an
is16Bit flag. As a result, a StringView is incapable of handling strings that
have a length of 32-bit in size. This results in a mismatch with the
expectations of String, StringImpl, and JavaScriptCore's JSString which all
support a 32-bit unsigned length.
This patch fixes this issue by introducing an explicit m_is8Bit field, thereby
allowing m_length to be a full 32-bit again.
We also introduced a clear() convenience method to set the fields of StringView
to empty values. Previously, we were duplicating the code for clearing those
fields. We now call clear() in all those places instead.
Note: in clear(), we set m_is8Bit to true because we want an empty StringView
to be 8-bit rather than 16-bit. This is consistent with what the empty() method
returns.
- wtf/text/StringView.h:
(WTF::StringView::setUnderlyingString):
(WTF::StringView::StringView):
(WTF::StringView::operator=):
(WTF::StringView::initialize):
(WTF::StringView::clear):
(WTF::StringView::empty):
(WTF::StringView::length):
(WTF::StringView::operator bool):
(WTF::StringView::is8Bit):
(WTF::StringView::substring):
(WTF::StringView::getCharactersWithUpconvert):
(WTF::StringView::toString):
(WTF::StringView::toAtomicString):
(WTF::StringView::toFloat):
(WTF::StringView::toInt):
(WTF::StringView::toIntStrict):
(WTF::StringView::toStringWithoutCopying):
(WTF::StringView::find):
- 1:21 PM Changeset in webkit [203833] by
-
- 9 edits in trunk
Parameter to tr.deleteCell() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160308
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Parameter to tr.deleteCell() should be mandatory:
Firefox and Chrome agree with the specification.
No new tests, rebaselined existing tests.
- html/HTMLTableRowElement.idl:
Source/WebInspectorUI:
Report tr.deleteCell() parameter as mandatory.
- UserInterface/Models/NativeFunctionParameters.js:
LayoutTests:
Update existing test to reflect behavior change.
- fast/dom/non-numeric-values-numeric-parameters-expected.txt:
- fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
- 1:21 PM Changeset in webkit [203832] by
-
- 4 edits in trunk/Tools
webkit-patch upload --suggest-reviewers shouldn't break in the presence of deleted or moved files
<https://webkit.org/b/83342>
Reviewed by Ryosuke Niwa.
- Scripts/webkitpy/common/checkout/scm/git.py:
(Git.revisions_changing_file): Remove code to raise an exception
when the file doesn't exist. If a file was moved or renamed,
then this caused the script to terminate, which was very
frustrating when you wanted a list of reviewers.
- Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
(SCMTest._shared_test_revisions_changing_file): Update test
expectation to return an empty list of revisions.
(test_create_patch_is_full_patch): Drive-by fix when running all
webkitpy tests (including scm tests).
- Scripts/webkitpy/common/checkout/scm/svn.py:
(SVN.revisions_changing_file): Catch ScriptError exceptions and
return an empty array of revisions if this occurs.
- 1:18 PM Changeset in webkit [203831] by
-
- 5 edits in trunk
[Bindings] "length" value of overloaded operations may be wrong
https://bugs.webkit.org/show_bug.cgi?id=160303
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
"length" value of overloaded operations may be wrong because we fail to
account for overloads when computing the length of a function:
No new tests, rebaselined existing test.
- bindings/scripts/CodeGeneratorJS.pm:
(GetFunctionLength):
- bindings/scripts/test/JS/JSTestObj.cpp:
- 1:12 PM Changeset in webkit [203830] by
-
- 9 edits in trunk/Tools
EWS error message "Error: * did not process patch" should include explanation
https://bugs.webkit.org/show_bug.cgi?id=159903
<rdar://problem/27410788>
Reviewed by Alexey Proskuryakov.
- QueueStatusServer/handlers/statusbubble.py:
(StatusBubble._build_bubble): Display more detailed error message on bubbles when patch
is not processed.
- QueueStatusServer/handlers/processingtimesjson.py:
(ProcessingTimesJSON._resultFromFinalStatus): Updated error message to match with rest
of the code.
- Scripts/webkitpy/tool/bot/commitqueuetask.py:
(CommitQueueTask.validate): Add more information about validation failure.
(CommitQueueTask.run): Pass the error details in the PatchIsNotValid exception.
- Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
(EarlyWarningSystemTask.validate): Add more information about validation failure.
(EarlyWarningSystemTask.run): Pass the error details in the PatchIsNotValid exception.
- Scripts/webkitpy/tool/bot/patchanalysistask.py:
(PatchIsNotValid.init): Add the failure_message argument.
- Scripts/webkitpy/tool/commands/earlywarningsystem.py:
(AbstractEarlyWarningSystem.review_patch): Re-word the error message and include
failure details.
- Scripts/webkitpy/tool/commands/queues.py:
(CommitQueue.process_work_item): Same.
(StyleQueue.review_patch): Same.
- Scripts/webkitpy/tool/commands/queues_unittest.py:
(test_non_valid_patch): Updated test-cases messages to match the above changes.
- 12:53 PM Changeset in webkit [203829] by
-
- 5 edits in tags/Safari-602.1.43.0.1/Source
Versioning.
- 12:50 PM Changeset in webkit [203828] by
-
- 2 edits in trunk/LayoutTests
Marking fast/dom/Window/child-window-focus.html as flaky on mac-wk2
https://bugs.webkit.org/show_bug.cgi?id=160309
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 12:50 PM Changeset in webkit [203827] by
-
- 1 copy in tags/Safari-602.1.43.0.1
New tag.
- 11:26 AM Changeset in webkit [203826] by
-
- 4 edits4 adds in trunk
HTMLVideoElement with MediaStream src shows paused image when all video tracks are disabled
https://bugs.webkit.org/show_bug.cgi?id=160222
<rdar://problem/27557313>
Patch by George Ruan <gruan@apple.com> on 2016-07-28
Reviewed by Eric Carlson.
Source/WebCore:
Tests: fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html
fast/mediastream/MediaStream-video-element-video-tracks-disabled.html
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::enqueueVideoSampleBufferFromTrack): Change criteria to enqueue a
Sample Buffer to the AVSampleBufferDisplayLayer to allow an initial frame to be shown.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::shouldEnqueueVideoSampleBuffer): Allow an initial frame to be shown.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::flushAndRemoveVideoSampleBuffers): Removes all buffers from the
AVSampleBufferDisplayLayer.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::ensureLayer): Make the AVSampleBufferDisplayLayer's background black.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updateDisplayMode): Remove all buffers from the AVSampleBufferDisplayLayer
when state of MediaPlayerPrivateMediaStreamAVFObjC is changed to None of PaintItBlack.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::updatePausedImage): Updates paused image.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::pause): Calls updatePausedImage.
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::paintCurrentFrameInContext): Allow an initial frame to be painted to canvas.
LayoutTests:
- fast/mediastream/MediaStream-video-element-video-tracks-disabled-expected.html: Added.
- fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled-expected.txt: Added.
- fast/mediastream/MediaStream-video-element-video-tracks-disabled-then-enabled.html: Added. Checks
that the video frames display captured media if all video tracks were disabled and then a single
video track is re-enabled. This test also checks that an initial frame is painted to
canvas if the video has not yet been played.
- fast/mediastream/MediaStream-video-element-video-tracks-disabled.html: Added. Reference tests the
frames of the video to be black, since the canvas is painted black regardless of the state of the video frames
if displayMode of MediaPlayerPrivateMediaStreamAVFObjC is PaintItBlack.
- 11:19 AM Changeset in webkit [203825] by
-
- 2 edits in trunk/Source/WebCore
REGRESSION (r202880): Default controls pip glyph inverted
https://bugs.webkit.org/show_bug.cgi?id=160304
<rdar://problem/27578447>
Reviewed by Eric Carlson.
I accidentally committed the "Exit Picture-in-picture" glyph
for the "Enter Picture-in-picture" buttons :(
- Modules/mediacontrols/mediaControlsApple.css:
(video::-webkit-media-controls-panel .picture-in-picture-button):
Use the correct artwork.
- 11:17 AM Changeset in webkit [203824] by
-
- 5 edits in trunk/Source
Versioning.
- 11:17 AM Changeset in webkit [203823] by
-
- 2 edits in trunk/LayoutTests
Unskip some CSS tests that previously timed out on ios-simulator.
Unreviewed test gardening.
- platform/ios-simulator-wk2/TestExpectations:
- 11:16 AM Changeset in webkit [203822] by
-
- 1 copy in tags/Safari-603.1.1
New tag.
- 11:14 AM Changeset in webkit [203821] by
-
- 3 edits2 adds in trunk
First parameter to SVGDocument.createEvent() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160296
Reviewed by Alex Christensen.
Source/WebCore:
First parameter to SVGDocument.createEvent() should be mandatory:
- https://www.w3.org/TR/SVG2/struct.html#InterfaceDocumentExtensions
- https://dom.spec.whatwg.org/#document
This patch drops createEvent() from SVGDocument so that the spec-compliant
Document.createEvent() is used instead. In the specification, SVGDocument
no longer exists and is a simple Document.
Firefox and Chrome agree with the specification.
Test: svg/dom/SVGDocument-createEvent.html
- svg/SVGDocument.idl:
LayoutTests:
Add test coverage.
- svg/dom/SVGDocument-createEvent-expected.txt: Added.
- svg/dom/SVGDocument-createEvent.html: Added.
- 11:04 AM Changeset in webkit [203820] by
-
- 6 edits in trunk
Parameters to CanvasGradient.addColorStop() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160297
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
Rebaseline W3C test now that one more check is passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Parameters to CanvasGradient.addColorStop() should be mandatory:
Firefox and Chrome agree with the specification.
No new tests, rebaselined existing test.
- html/canvas/CanvasGradient.idl:
LayoutTests:
Rebaseline existing test due to behavior change.
- platform/mac/canvas/philip/tests/2d.missingargs-expected.txt:
- 11:01 AM Changeset in webkit [203819] by
-
- 4 edits2 adds in trunk/LayoutTests
Unskip some compositing tests on ios-simulator.
https://bugs.webkit.org/show_bug.cgi?id=152131
Unreviewed test gardening.
- 8:43 AM Changeset in webkit [203818] by
-
- 18 edits6 moves in trunk
[Streams API] Replace ReadableStreamController by ReadableStreamDefaultController
https://bugs.webkit.org/show_bug.cgi?id=160242
Patch by Romain Bellessort <romain.bellessort@crf.canon.fr> on 2016-07-28
Reviewed by Youenn Fablet.
Replaced ReadableStreamController by ReadableStreamDefaultController to align
with updated Streams API specification.
No change in functionality.
Source/WebCore:
- CMakeLists.txt:
- DerivedSources.cpp:
- DerivedSources.make:
- Modules/streams/ReadableStream.js:
(initializeReadableStream):
- Modules/streams/ReadableStreamDefaultController.idl: Renamed from Source/WebCore/Modules/streams/ReadableStreamController.idl.
- Modules/streams/ReadableStreamDefaultController.js: Renamed from Source/WebCore/Modules/streams/ReadableStreamController.js.
(enqueue):
(error):
(close):
(desiredSize):
- Modules/streams/ReadableStreamInternals.js:
(privateInitializeReadableStreamDefaultController):
(isReadableStreamDefaultController):
- Modules/streams/ReadableStreamSource.h:
(WebCore::ReadableStreamSource::controller):
(WebCore::ReadableStreamSource::start):
- Modules/streams/ReadableStreamSource.idl:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::addBuiltinGlobals):
- bindings/js/JSReadableStreamPrivateConstructors.cpp:
(WebCore::constructJSReadableStreamDefaultController):
(WebCore::JSBuiltinReadableStreamDefaultControllerPrivateConstructor::initializeExecutable):
(WebCore::createReadableStreamDefaultControllerPrivateConstructor):
- bindings/js/JSReadableStreamPrivateConstructors.h:
- bindings/js/JSReadableStreamSourceCustom.cpp:
(WebCore::JSReadableStreamSource::start):
- bindings/js/ReadableStreamDefaultController.cpp: Renamed from Source/WebCore/bindings/js/ReadableStreamController.cpp.
(WebCore::callFunction):
(WebCore::ReadableStreamDefaultController::invoke):
(WebCore::ReadableStreamDefaultController::isControlledReadableStreamLocked):
- bindings/js/ReadableStreamDefaultController.h: Renamed from Source/WebCore/bindings/js/ReadableStreamController.h.
(WebCore::ReadableStreamDefaultController::ReadableStreamDefaultController):
(WebCore::ReadableStreamDefaultController::close):
(WebCore::ReadableStreamDefaultController::error):
(WebCore::ReadableStreamDefaultController::enqueue):
(WebCore::ReadableStreamDefaultController::globalObject):
(WebCore::ReadableStreamDefaultController::error<String>):
- bindings/js/WebCoreBuiltinNames.h:
LayoutTests:
- streams/readable-stream-default-controller-error-expected.txt: Renamed from LayoutTests/streams/readable-stream-controller-error-expected.txt.
- streams/readable-stream-default-controller-error.html: Renamed from LayoutTests/streams/readable-stream-controller-error.html.
- streams/readable-stream-error-messages-expected.txt:
- streams/readable-stream-error-messages.html:
- streams/reference-implementation/readable-stream-expected.txt:
- 5:07 AM Changeset in webkit [203817] by
-
- 2 edits in trunk/Source/JavaScriptCore
[ARM] Typo fix after r121885
https://bugs.webkit.org/show_bug.cgi?id=160288
Reviewed by Zoltan Herczeg.
- assembler/MacroAssemblerARM.h:
(JSC::MacroAssemblerARM::maxJumpReplacementSize):
- 2:28 AM Changeset in webkit [203816] by
-
- 2 edits in trunk/Source/JavaScriptCore
64-bit alignment check isn't necessary in ARMAssembler::prepareExecutableCopy after r202214
https://bugs.webkit.org/show_bug.cgi?id=159711
Reviewed by Mark Lam.
- assembler/ARMAssembler.cpp:
(JSC::ARMAssembler::prepareExecutableCopy):
- 2:27 AM MathML/Early_2016_Refactoring edited by
- (diff)
- 1:30 AM Changeset in webkit [203815] by
-
- 35 edits in trunk
Compute fetch response type in case of cross-origin requests
https://bugs.webkit.org/show_bug.cgi?id=158565
Patch by Youenn Fablet <youenn@apple.com> on 2016-07-28
Reviewed by Alex Christensen.
LayoutTests/imported/w3c:
Rebasing fetch API tests as filtering is now done.
Rebasing XHR tests as console messages are no longer available when trying to access non-exposed headers.
- web-platform-tests/XMLHttpRequest/getresponseheader-cookies-and-more-expected.txt:
- web-platform-tests/fetch/api/basic/mode-no-cors-expected.txt:
- web-platform-tests/fetch/api/basic/mode-no-cors-worker-expected.txt:
- web-platform-tests/fetch/api/cors/cors-basic-expected.txt:
- web-platform-tests/fetch/api/cors/cors-filtering-expected.txt:
- web-platform-tests/fetch/api/request/request-cache-expected.txt:
Source/WebCore:
Covered by rebased tests.
Implementing Response filtering based on Response tainting in ResourceResponse.
Refactoring code in FetchHeaders and CrossOriginAccessControl.cpp accordingly.
Computing response tainting in SubresourceLoader for all resources.
This is used by DocumentThreadableLoader which now filters responses accordingly for all its clients including fetch and XHR.
Response tainting notably allows computing the response type and filtering out headers in case of cross origin responses.
Removing the filtering implemented in XMLHttpRequest as this is done before it gets access to the headers.
This is triggering some rebasing in the XHR tests as error messages triggered by trying to access unsafe headers no longer happen.
This filtering currently requires creating a new ResourceResponse object from the one sent from CachedResource.
This is done so as the same ResourceResponse may be reused accross loads and may be filtered differently by given to two different DocumentThreadableLoader
This can be mitigated in the future by changing ThreadableLoaderClient API to pass a ResourceResponse&&.
- Modules/fetch/FetchHeaders.cpp: Moving header checking in HTTParsers.h/.cpp
(WebCore::isForbiddenHeaderName): Deleted.
(WebCore::isForbiddenResponseHeaderName): Deleted.
(WebCore::isSimpleHeader): Deleted.
- loader/CrossOriginAccessControl.cpp:
(WebCore::parseAccessControlExposeHeadersAllowList): Deleted.
- loader/CrossOriginAccessControl.h: Moving header checking in HTTParsers.h/.cpp
- loader/DocumentThreadableLoader.cpp:
(WebCore::DocumentThreadableLoader::responseReceived):
(WebCore::DocumentThreadableLoader::didReceiveResponse): Doing response filtering. Since underlying loaders are
not yet aware that fetch mode may be cors (it is always no-cors currently), the tainting needs to be updated.
(WebCore::DocumentThreadableLoader::loadRequest): Computing response tainting in case of synchronous calls to ensure headers are filtered for synchronous XHR.
- loader/DocumentThreadableLoader.h:
- loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::init): Getting origin from its resource and setting response tainting accordingly
(WebCore::SubresourceLoader::willSendRequestInternal): Always calling checkRedirectionCrossOriginAccessControl
to ensure response tainting is computed, even for no-cors resources.
(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::checkRedirectionCrossOriginAccessControl): Computing response tainting in case of redirection.
- loader/SubresourceLoader.h:
- loader/cache/CachedResource.cpp:
(WebCore::CachedResource::load): Computing resource origin from the HTTP headers or from the document if none is
set in the HTTP headers.
(WebCore::CachedResource::setCrossOrigin): Helper routine to set response tainting.
(WebCore::CachedResource::isCrossOrigin): Helper routine to know whether resource is cross origin
(WebCore::CachedResource::isClean):
(WebCore::CachedResource::setResponse): Removing m_responseType
- loader/cache/CachedResource.h:
(WebCore::CachedResource::responseTainting):
(WebCore::CachedResource::origin):
(WebCore::CachedResource::setOpaqueRedirect): Deleted.
- platform/network/HTTPParsers.cpp: Implementing safe response header checking
(WebCore::parseAccessControlExposeHeadersAllowList):
(WebCore::isForbiddenHeaderName):
(WebCore::isForbiddenResponseHeaderName):
(WebCore::isSimpleHeader):
(WebCore::isCrossOriginSafeHeader):
- platform/network/HTTPParsers.h:
- platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::hasHTTPOrigin): Added.
(WebCore::ResourceRequestBase::clearHTTPOrigin):
- platform/network/ResourceRequestBase.h:
- platform/network/ResourceResponseBase.cpp: Implementation of response filtering.
(WebCore::ResourceResponseBase::filterResponse):
- platform/network/ResourceResponseBase.h:
- xml/XMLHttpRequest.cpp:
(WebCore::isSetCookieHeader): Deleted.
(WebCore::XMLHttpRequest::getAllResponseHeaders): Removing header filtering since DocumentThreadableLoader does it.
(WebCore::XMLHttpRequest::getResponseHeader): Ditto.
LayoutTests:
Rebasing fetch API tests as filtering is now done.
Rebasing XHR tests as console messages are no longer available when trying to access non-exposed headers.
- http/tests/xmlhttprequest/access-control-basic-whitelist-response-headers-expected.txt:
- http/tests/xmlhttprequest/access-control-response-with-expose-headers-expected.txt:
- http/tests/xmlhttprequest/get-dangerous-headers-expected.txt:
- http/tests/xmlhttprequest/getResponseHeader-expected.txt:
- platform/ios-simulator-wk2/imported/w3c/web-platform-tests/fetch/api/basic/mode-no-cors-expected.txt:
- platform/ios-simulator-wk2/imported/w3c/web-platform-tests/fetch/api/basic/mode-no-cors-worker-expected.txt:
- platform/ios-simulator-wk2/imported/w3c/web-platform-tests/fetch/api/cors/cors-basic-expected.txt:
- platform/mac-wk2/imported/w3c/web-platform-tests/fetch/api/basic/mode-no-cors-expected.txt:
- platform/mac-wk2/imported/w3c/web-platform-tests/fetch/api/basic/mode-no-cors-worker-expected.txt:
- platform/mac-wk2/imported/w3c/web-platform-tests/fetch/api/cors/cors-basic-expected.txt:
Jul 27, 2016:
- 11:37 PM Changeset in webkit [203814] by
-
- 2 edits in trunk/Source/WebCore
[Streams API] Use makeThisTypeError in ReadableStreamDefaultReader.js
https://bugs.webkit.org/show_bug.cgi?id=160254
Patch by Romain Bellessort <romain.bellessort@crf.canon.fr> on 2016-07-27
Reviewed by Darin Adler.
Use makeThisTypeError and makeGetterTypeError in ReadableStreamDefaultReader.js
No change in functionality.
- Modules/streams/ReadableStreamDefaultReader.js:
(cancel):
(read):
(releaseLock):
(closed):
- 11:28 PM Changeset in webkit [203813] by
-
- 3 edits in trunk/Source/WebCore
[soup] Incorrect usage of relaxAdoptionRequirement in the constructor of SocketStreamHandle
https://bugs.webkit.org/show_bug.cgi?id=160281
Patch by Fujii Hironori <Fujii Hironori> on 2016-07-27
Reviewed by Carlos Garcia Campos.
No new tests (No behavior change).
Incrementing refcount in a constructor causes an assertion failure
that it's not adopted yet. So, relaxAdoptionRequirement() was
used to avoid the problem in the constructors of
SocketStreamHandle. This is a incorrect solution. The correct
solution is to make SocketStreamHandle::create() increment the
refcount after calling the constructor.
- platform/network/soup/SocketStreamHandle.h: Removed the second
constructor of SocketStreamHandle which is not used anymore.
Uninlined create() because this is not trivial anymore.
- platform/network/soup/SocketStreamHandleSoup.cpp:
(WebCore::SocketStreamHandle::create): Do the rest of jobs which
was done by the constructors.
(WebCore::SocketStreamHandle::SocketStreamHandle): Move the jobs
after initialization to create().
Removed the second constructor.
- 10:59 PM Changeset in webkit [203812] by
-
- 3 edits in trunk/Source/JavaScriptCore
[JSC] Remove some unused code from FTL
https://bugs.webkit.org/show_bug.cgi?id=160285
Patch by Benjamin Poulain <bpoulain@apple.com> on 2016-07-27
Reviewed by Mark Lam.
All the liveness and swapping is done inside B3,
this code is no longer needed.
- dfg/DFGEdge.h:
(JSC::DFG::Edge::doesNotKill): Deleted.
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::doesKill): Deleted.
- 10:47 PM Changeset in webkit [203811] by
-
- 2 edits in trunk/Tools
LayoutTestRelay should wait for WebKitTestRunnerApp installation to complete
https://bugs.webkit.org/show_bug.cgi?id=160262
Reviewed by Daniel Bates.
- LayoutTestRelay/LayoutTestRelay/LTRelayController.m:
(-[LTRelayController installApp]):
- 9:45 PM Changeset in webkit [203810] by
-
- 3 edits in trunk/LayoutTests
Marking http/tests/loading/basic-credentials-sent-automatically.html as flaky on mac and ios-sim wk2
https://bugs.webkit.org/show_bug.cgi?id=159427
Unreivewed test gardening.
- platform/ios-simulator-wk2/TestExpectations:
- platform/mac-wk2/TestExpectations:
- 6:59 PM Changeset in webkit [203809] by
-
- 4 edits in trunk/Source/WebKit2
[iOS] Add WKUIDelegate SPI for specifying that an attachment list is from a managed source
https://bugs.webkit.org/show_bug.cgi?id=160280
<rdar://problem/27471815>
Reviewed by Dan Bernstein.
- Platform/spi/ios/UIKitSPI.h: Declared
UIPreviewItemTypeAttachment, UIPreviewDataAttachmentList, and UIPreviewDataAttachmentIndex.
- UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Declared -_attachmentListForWebView:sourceIsManaged:.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _dataForPreviewItemController:atPosition:type:]): Used UIPreviewItemTypeAttachment,
UIPreviewDataAttachmentList, and UIPreviewDataAttachmentIndex. If uiDelegate responds to
-_attachmentListForWebView:sourceIsManaged:, called it instead of -_attachmentListForWebView:.
Set sourceIsManaged as the value for the UIPreviewDataAttachmentListSourceIsManaged key in dataForPreview.
- 6:36 PM Changeset in webkit [203808] by
-
- 23 edits4 deletes in trunk/Source/JavaScriptCore
[JSC] DFG::Node should not have its own allocator
https://bugs.webkit.org/show_bug.cgi?id=160098
Patch by Benjamin Poulain <bpoulain@apple.com> on 2016-07-27
Reviewed by Geoffrey Garen.
We need some design changes for DFG::Node:
-Accessing the index must be fast. B3 uses indices for sets
and maps, it is a lot faster than hashing pointers.
-We should be able to subclass DFG::Node to specialize it.
- CMakeLists.txt:
- JavaScriptCore.xcodeproj/project.pbxproj:
- dfg/DFGAllocator.h: Removed.
(JSC::DFG::Allocator::Region::size): Deleted.
(JSC::DFG::Allocator::Region::headerSize): Deleted.
(JSC::DFG::Allocator::Region::numberOfThingsPerRegion): Deleted.
(JSC::DFG::Allocator::Region::data): Deleted.
(JSC::DFG::Allocator::Region::isInThisRegion): Deleted.
(JSC::DFG::Allocator::Region::regionFor): Deleted.
(JSC::DFG::Allocator<T>::Allocator): Deleted.
(JSC::DFG::Allocator<T>::~Allocator): Deleted.
(JSC::DFG::Allocator<T>::allocate): Deleted.
(JSC::DFG::Allocator<T>::free): Deleted.
(JSC::DFG::Allocator<T>::freeAll): Deleted.
(JSC::DFG::Allocator<T>::reset): Deleted.
(JSC::DFG::Allocator<T>::indexOf): Deleted.
(JSC::DFG::Allocator<T>::allocatorOf): Deleted.
(JSC::DFG::Allocator<T>::bumpAllocate): Deleted.
(JSC::DFG::Allocator<T>::freeListAllocate): Deleted.
(JSC::DFG::Allocator<T>::allocateSlow): Deleted.
(JSC::DFG::Allocator<T>::freeRegionsStartingAt): Deleted.
(JSC::DFG::Allocator<T>::startBumpingIn): Deleted.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::addToGraph):
- dfg/DFGCPSRethreadingPhase.cpp:
(JSC::DFG::CPSRethreadingPhase::freeUnnecessaryNodes):
(JSC::DFG::CPSRethreadingPhase::addPhiSilently):
- dfg/DFGCleanUpPhase.cpp:
(JSC::DFG::CleanUpPhase::run):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::run):
- dfg/DFGConstantHoistingPhase.cpp:
- dfg/DFGDCEPhase.cpp:
(JSC::DFG::DCEPhase::fixupBlock):
- dfg/DFGDriver.cpp:
(JSC::DFG::compileImpl):
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::Graph):
(JSC::DFG::Graph::deleteNode):
(JSC::DFG::Graph::killBlockAndItsContents):
(JSC::DFG::Graph::~Graph): Deleted.
- dfg/DFGGraph.h:
(JSC::DFG::Graph::addNode):
- dfg/DFGLICMPhase.cpp:
(JSC::DFG::LICMPhase::attemptHoist):
- dfg/DFGLongLivedState.cpp: Removed.
(JSC::DFG::LongLivedState::LongLivedState): Deleted.
(JSC::DFG::LongLivedState::~LongLivedState): Deleted.
(JSC::DFG::LongLivedState::shrinkToFit): Deleted.
- dfg/DFGLongLivedState.h: Removed.
- dfg/DFGNode.cpp:
(JSC::DFG::Node::index): Deleted.
- dfg/DFGNode.h:
(JSC::DFG::Node::index):
- dfg/DFGNodeAllocator.h: Removed.
(operator new ): Deleted.
- dfg/DFGObjectAllocationSinkingPhase.cpp:
- dfg/DFGPlan.cpp:
(JSC::DFG::Plan::compileInThread):
(JSC::DFG::Plan::compileInThreadImpl):
- dfg/DFGPlan.h:
- dfg/DFGSSAConversionPhase.cpp:
(JSC::DFG::SSAConversionPhase::run):
- dfg/DFGWorklist.cpp:
(JSC::DFG::Worklist::runThread):
- runtime/VM.cpp:
(JSC::VM::VM): Deleted.
- runtime/VM.h:
- 4:54 PM Changeset in webkit [203807] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Visual Styles Sidebar should have only one column when it's narrow
https://bugs.webkit.org/show_bug.cgi?id=159905
<rdar://problem/27413248>
Reviewed by Joseph Pecoraro.
Many CSS values often get clipped in the two colunm layout. Change the layout to one colunm
when visual style rows get too narrow.
- UserInterface/Views/VisualStyleDetailsPanel.css:
(.sidebar > .panel.details.css-style .visual > .details-section .details-section > .content .group > .row):
(.sidebar > .panel.details.css-style .visual > .details-section .details-section > .content .group > .metric-section-row):
Wrap all rows except for position/padding/margin controls.
(.sidebar > .panel.details.css-style .visual > .details-section .details-section > .content .group > .row > .visual-style-property-container:not(.layout-reversed):last-child): Deleted.
Margin between the first and the second column doesn't make sense one column layout.
Set the margin in .visual-style-property-container instead.
- UserInterface/Views/VisualStyleDetailsPanel.js:
(WebInspector.VisualStyleDetailsPanel.prototype._generateMetricSectionRows):
- UserInterface/Views/VisualStylePropertyEditor.css:
(.visual-style-property-container):
- 4:50 PM Changeset in webkit [203806] by
-
- 9 edits in trunk
First parameter to HTMLMediaElement.canPlayType() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160275
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline w3c test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
First parameter to HTMLMediaElement.canPlayType() should be mandatory:
Firefox and Chrome agree with the specification.
No new tests, rebaselined existing tests.
- html/HTMLMediaElement.idl:
LayoutTests:
Update existing tests to reflect behavior change.
- media/encrypted-media/encrypted-media-can-play-type.html:
- media/media-can-play-type-expected.txt:
- media/media-can-play-type.html:
- platform/mac/media/encrypted-media/encrypted-media-can-play-type-expected.txt:
- 4:50 PM Changeset in webkit [203805] by
-
- 5 edits in trunk
First parameter to setTimeout() / setInterval() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160277
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
First parameter to setTimeout() / setInterval() should be mandatory:
Firefox and Chrome agree with the specification.
No new tests, rebaselined existing test.
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::setTimeout):
(WebCore::JSDOMWindow::setInterval):
- bindings/js/JSWorkerGlobalScopeCustom.cpp:
(WebCore::JSWorkerGlobalScope::setTimeout):
(WebCore::JSWorkerGlobalScope::setInterval):
- 4:36 PM Changeset in webkit [203804] by
-
- 2 edits in trunk/Source/WebInspectorUI
[Mac] Web Inspector: CodeMirror-based editor bindings for Home and End don't match system behavior
https://bugs.webkit.org/show_bug.cgi?id=160267
<rdar://problem/27575553>
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2016-07-27
Reviewed by Brian Burg.
- UserInterface/Views/CodeMirrorEditor.js:
(WebInspector.CodeMirrorEditor.create):
(WebInspector.CodeMirrorEditor):
Add some key map overrides for Home and End to better match system Mac
behavior. This scrolls to the start or end of a document and does not
change the cursor position.
- 4:28 PM Changeset in webkit [203803] by
-
- 3 edits2 adds in trunk
Parameters to insertAdjacentText() / insertAdjacentHTML() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160274
Reviewed by Darin Adler.
Source/WebCore:
Parameters to insertAdjacentText() / insertAdjacentHTML() should be mandatory:
- https://dom.spec.whatwg.org/#element
- https://www.w3.org/TR/DOM-Parsing/#extensions-to-the-element-interface
Firefox and Chrome agree with the specification (although Firefox does not
have insertAdjacentText()).
Test: fast/dom/Element/insertAdjacentText-parameters.html
- html/HTMLElement.idl:
LayoutTests:
Add test coverage.
- fast/dom/Element/insertAdjacentText-parameters-expected.txt: Added.
- fast/dom/Element/insertAdjacentText-parameters.html: Added.
- 4:22 PM Changeset in webkit [203802] by
-
- 7 edits in trunk/Source/JavaScriptCore
[JSC] Fix a bunch of use-after-free of DFG::Node
https://bugs.webkit.org/show_bug.cgi?id=160228
Patch by Benjamin Poulain <bpoulain@apple.com> on 2016-07-27
Reviewed by Mark Lam.
FTL had a few places where we use a node after it has been
deleted. The dangling pointers come from the SSA liveness information
kept on the basic blocks.
This patch fixes the issues I could find and adds liveness invalidation
to help finding dependencies like these.
- dfg/DFGBasicBlock.h:
(JSC::DFG::BasicBlock::SSAData::invalidate):
- dfg/DFGConstantFoldingPhase.cpp:
(JSC::DFG::ConstantFoldingPhase::run):
Constant folding phase was deleting nodes in the loop over basic blocks.
The problem is the deleted nodes can be referenced by other blocks.
When the abstract interpreter was manipulating the abstract values of those
it was doing so on the dead nodes.
- dfg/DFGConstantHoistingPhase.cpp:
Just invalidation. Nothing wrong here since the useless nodes were
kept live while iterating the blocks.
- dfg/DFGGraph.cpp:
(JSC::DFG::Graph::killBlockAndItsContents):
(JSC::DFG::Graph::killUnreachableBlocks):
(JSC::DFG::Graph::invalidateNodeLiveness):
- dfg/DFGGraph.h:
- dfg/DFGPlan.cpp:
(JSC::DFG::Plan::compileInThreadImpl):
We had a lot of use-after-free in LCIM because we were using the stale
live nodes deleted by previous phases.
- 3:34 PM Changeset in webkit [203801] by
-
- 4 edits in trunk/Source/WebCore
Add localizable strings for inserting list types
https://bugs.webkit.org/show_bug.cgi?id=160233
-and corresponding-
rdar://problem/26102954
Reviewed by Dan Bernstein.
- English.lproj/Localizable.strings:
- platform/LocalizedStrings.cpp:
(WebCore::insertListTypeNone):
(WebCore::insertListTypeNoneAccessibilityTitle):
(WebCore::insertListTypeBulleted):
(WebCore::insertListTypeBulletedAccessibilityTitle):
(WebCore::insertListTypeNumbered):
(WebCore::insertListTypeNumberedAccessibilityTitle):
- platform/LocalizedStrings.h:
- 3:15 PM Changeset in webkit [203800] by
-
- 3 edits2 adds in trunk
Parameters to DOMParser.parseFromString() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160268
Reviewed by Ryosuke Niwa.
Source/WebCore:
Parameters to DOMParser.parseFromString() should be mandatory:
Firefox and Chrome agree with the specification.
Test: fast/parser/DOMParser-parameters.html
- xml/DOMParser.idl:
LayoutTests:
Add test coverage.
- fast/parser/DOMParser-parameters-expected.txt: Added.
- fast/parser/DOMParser-parameters.html: Added.
- 3:06 PM Changeset in webkit [203799] by
-
- 4 edits in trunk/Source/WebCore
Captions do not render in PiP window when element is hidden
https://bugs.webkit.org/show_bug.cgi?id=160265
<rdar://problem/27556788>
Reviewed by Simon Fraser.
- html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage): Pass new flag so
caption layers are always rendered.
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayerContents): Paint non-visible layers when PaintLayerIgnoreVisibility
flag is set.
- rendering/RenderLayer.h: Define PaintLayerIgnoreVisibility.
- 2:59 PM Changeset in webkit [203798] by
-
- 2 edits1 add in trunk/Source/JavaScriptCore
concatAppendOne should allocate using the indexing type of the array if it cannot merge
https://bugs.webkit.org/show_bug.cgi?id=160261
<rdar://problem/27530122>
Reviewed by Mark Lam.
Before, if we could not merge the indexing types for copying, we would allocate the
the array as ArrayWithUndecided. Instead, we should allocate an array with the original
array's indexing type.
- runtime/ArrayPrototype.cpp:
(JSC::concatAppendOne):
- tests/stress/concat-append-one-with-sparse-array.js: Added.
- 2:51 PM Changeset in webkit [203797] by
-
- 11 edits in trunk
Parameter to named property getter should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160269
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
Parameter to named property getter should be mandatory:
No new tests, rebaselined existing test.
- Modules/mediastream/RTCStatsResponse.idl:
- bindings/scripts/test/TestOverrideBuiltins.idl:
- html/HTMLOptionsCollection.idl:
- html/HTMLSelectElement.idl:
- plugins/DOMMimeTypeArray.idl:
- plugins/DOMPlugin.idl:
- plugins/DOMPluginArray.idl:
- 2:36 PM Changeset in webkit [203796] by
-
- 4 edits in trunk
First parameter to Range.createContextualFragment() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160266
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline W3C test now that one more check is passing.
- web-platform-tests/domparsing/createContextualFragment-expected.txt:
Source/WebCore:
First parameter to Range.createContextualFragment() should be mandatory:
Firefox and Chrome agree with the specification.
No new tests, rebaselined existing test.
- dom/Range.idl:
- 2:33 PM Changeset in webkit [203795] by
-
- 5 edits4 adds in trunk
Align MediaList with the CSSOM specification
https://bugs.webkit.org/show_bug.cgi?id=160257
Reviewed by Ryosuke Niwa.
Source/WebCore:
Align MediaList with the CSSOM specification:
In particular, the parameter to item() / deleteMedium() and
appendMedium() is now mandatory.
Firefox and Chrome agree with the specification.
Test: fast/css/MediaList-mediaText-null.html
fast/css/MediaList-parameters.html
- css/MediaList.idl:
LayoutTests:
- fast/css/MediaList-mediaText-null-expected.txt: Added.
- fast/css/MediaList-mediaText-null.html: Added.
Add test coverage for MediaList.mediaText to make sure it is not nullable
and treats null as the empty string. Our IDL did not match the
specification here but our behavior was correct. Therefore, this test is
passing with and without my change. I just wanted to make sure we had
good coverage since I updated our IDL to match the specification.
- fast/css/MediaList-parameters-expected.txt: Added.
- fast/css/MediaList-parameters.html: Added.
Add test coverage for mandatory parameters.
- fast/dom/non-numeric-values-numeric-parameters-expected.txt:
- fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
Update existing test to reflect behavior change.
- 2:18 PM Changeset in webkit [203794] by
-
- 2 edits in trunk/LayoutTests
Correct the syntax used to skip js/regress/script-tests/bigswitch-indirect-symbol.js
Unreviewed test gardening.
- js/regress/script-tests/bigswitch-indirect-symbol.js:
- 2:11 PM Changeset in webkit [203793] by
-
- 2 edits1 add in trunk/Source/JavaScriptCore
We don't optimize for-in properly in baseline JIT (maybe other JITs too) with an object with symbols
https://bugs.webkit.org/show_bug.cgi?id=160211
<rdar://problem/27572612>
Reviewed by Geoffrey Garen.
The fast for-in iteration mode assumes all inline/out-of-line properties
can be iterated in linear order. This is not true if we have Symbols
because Symbols should not be iterated by for-in.
- runtime/Structure.cpp:
(JSC::Structure::add):
- tests/stress/symbol-should-not-break-for-in.js: Added.
(assert):
(foo):
- 2:10 PM Changeset in webkit [203792] by
-
- 2 edits in trunk/Source/WebCore
Fullscreen video zoom button does not work after rotating when aspect ratio matches display.
https://bugs.webkit.org/show_bug.cgi?id=160263
rdar://problem/27368872
Patch by Jeremy Jones <jeremyj@apple.com> on 2016-07-27
Reviewed by Eric Carlson.
When video and display aspect ratio match, and rotating from landscape to protrait, the transform used in layout
will be Identity. This means checking the transform for identity is an insufficient test to see if the bounds
need to be resolved.
Instead, always attempt to resolve the bounds and do a more accurate test while doing so.
- platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(-[WebAVPlayerLayer layoutSublayers]):
(-[WebAVPlayerLayer resolveBounds]):
- 2:00 PM Changeset in webkit [203791] by
-
- 3 edits in trunk/Source/WebKit2
[iOS] Remove unused textContentType SPI from _WKFormInputSession
https://bugs.webkit.org/show_bug.cgi?id=160260
Patch by Chelsea Pugh <cpugh@apple.com> on 2016-07-27
Reviewed by Dan Bernstein.
- UIProcess/API/Cocoa/_WKFormInputSession.h: Remove unused SPI.
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView textInputTraits]): Set textContentType of _traits to whatever we classify it as based
on the assisted node info. The default textContentType is nil, and that is our fallback in our method
for determining textContentType.
(-[WKFormInputSession textContentType]): Deleted.
(-[WKFormInputSession setTextContentType:]): Deleted.
- 1:55 PM Changeset in webkit [203790] by
-
- 2 edits1 add in trunk/Source/JavaScriptCore
The second argument for Function.prototype.apply should be array-like or null/undefined.
https://bugs.webkit.org/show_bug.cgi?id=160212
<rdar://problem/27328525>
Reviewed by Filip Pizlo.
The spec for Function.prototype.apply says its second argument can only be null,
undefined, or must be array-like. See
https://tc39.github.io/ecma262/#sec-function.prototype.apply and
https://tc39.github.io/ecma262/#sec-createlistfromarraylike.
Our previous implementation was not handling this correctly for SymbolType.
This is now fixed.
- interpreter/Interpreter.cpp:
(JSC::sizeOfVarargs):
- tests/stress/apply-second-argument-must-be-array-like.js: Added.
- 1:52 PM Changeset in webkit [203789] by
-
- 2 edits in trunk/Source/WebCore
Stop accepting the deprecated "requiredShippingAddressFields" and "requiredBillingAddressFields" properties
https://bugs.webkit.org/show_bug.cgi?id=160264
rdar://problem/27574519
Reviewed by Simon Fraser.
- Modules/applepay/ApplePaySession.cpp:
(WebCore::createPaymentRequest):
(WebCore::isValidPaymentRequestPropertyName):
- 1:51 PM Changeset in webkit [203788] by
-
- 21 edits in trunk
First parameter to indexed property getters should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160259
Reviewed by Ryosuke Niwa.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
First parameter to indexed property getters should be mandatory:
No new tests, rebaselined existing tests.
- Modules/gamepad/deprecated/GamepadList.idl:
- bindings/js/JSHTMLAllCollectionCustom.cpp:
(WebCore::JSHTMLAllCollection::item):
- css/CSSRuleList.idl:
- css/CSSValueList.idl:
- css/StyleSheetList.idl:
- css/WebKitCSSFilterValue.idl:
- css/WebKitCSSTransformValue.idl:
- dom/ClientRectList.idl:
- dom/DOMStringList.idl:
- dom/DataTransferItemList.idl:
- html/HTMLAllCollection.idl:
- plugins/DOMMimeTypeArray.idl:
- plugins/DOMPlugin.idl:
- plugins/DOMPluginArray.idl:
LayoutTests:
Update existing tests to reflect behavior change.
- fast/css/webkit-keyframes-crash.html:
- fast/dom/non-numeric-values-numeric-parameters-expected.txt:
- fast/dom/script-tests/non-numeric-values-numeric-parameters.js:
- 1:05 PM Changeset in webkit [203787] by
-
- 2 edits in trunk/LayoutTests
Land test expectations for rdar://problem/27574303.
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations:
- 12:56 PM Changeset in webkit [203786] by
-
- 7 edits in trunk/Source/JavaScriptCore
MathICs should be able to emit only a jump along the inline path when they don't have any type data
https://bugs.webkit.org/show_bug.cgi?id=160110
Reviewed by Mark Lam.
This patch allows for MathIC fast-path generation to be delayed.
We delay when we don't see any observed type information for
the lhs/rhs operand, which implies that the MathIC has never
executed. This is profitable for two main reasons:
- If the math operation never executes, we emit much less code.
- Once we get type information for the lhs/rhs, we can emit better code.
To implement this, we just emit a jump to the slow path call
that will repatch on first execution.
New data for add:
| JetStream | Unity 3D |
------| ------------- Old | 148 bytes | 143 bytes |
------| ------------- New | 116 bytes | 113 bytes |
------------------------------------
New data for mul:
| JetStream | Unity 3D |
------| ------------- Old | 210 bytes | 185 bytes |
------| ------------- New | 170 bytes | 137 bytes |
------------------------------------
- jit/JITAddGenerator.cpp:
(JSC::JITAddGenerator::generateInline):
- jit/JITAddGenerator.h:
(JSC::JITAddGenerator::isLeftOperandValidConstant):
(JSC::JITAddGenerator::isRightOperandValidConstant):
(JSC::JITAddGenerator::arithProfile):
- jit/JITMathIC.h:
(JSC::JITMathIC::generateInline):
(JSC::JITMathIC::generateOutOfLine):
(JSC::JITMathIC::finalizeInlineCode):
- jit/JITMathICInlineResult.h:
- jit/JITMulGenerator.cpp:
(JSC::JITMulGenerator::generateInline):
- jit/JITMulGenerator.h:
(JSC::JITMulGenerator::isLeftOperandValidConstant):
(JSC::JITMulGenerator::isRightOperandValidConstant):
(JSC::JITMulGenerator::arithProfile):
- jit/JITOperations.cpp:
- 11:46 AM Changeset in webkit [203785] by
-
- 2 edits in trunk/Source/WebCore
[css-grid] The isValidTransition function must not alter the GridSizingData object
https://bugs.webkit.org/show_bug.cgi?id=160252
Reviewed by Darin Adler.
It's not correct that a function which purpose is to check out the
validity of a state modifies such state.
That code was there to allow the extra row track sizing iteration
in the case of a grid container with indefinite height. We need to
do that in order to figure out its intrinsic height, which will be
used then to properly sizing the row tracks.
Since the intrinsic height computation uses directly the
computeUsedBreadthOfGridTracks function, it does not alter the
algorithm state-machine, hence, we can safely remove this code,
which was incorrect in any case.
No new tests, it's just a refactoring with no functionality change.
- rendering/RenderGrid.cpp:
(WebCore::RenderGrid::GridSizingData::isValidTransition):
- 11:27 AM Changeset in webkit [203784] by
-
- 5 edits2 adds in trunk
First parameter to Document.execCommand() / queryCommand*() should be mandatory
https://bugs.webkit.org/show_bug.cgi?id=160258
Reviewed by Darin Adler.
LayoutTests/imported/w3c:
Rebaseline W3C test now that more checks are passing.
- web-platform-tests/html/dom/interfaces-expected.txt:
Source/WebCore:
First parameter to Document.execCommand() / queryCommand*() should be mandatory:
Firefox and Chrome agree with the specification.
Test: fast/dom/Document/editing-parameters.html
- dom/Document.idl:
LayoutTests:
Add layout test coverage.
- fast/dom/Document/editing-parameters-expected.txt: Added.
- fast/dom/Document/editing-parameters.html: Added.
- 11:04 AM Changeset in webkit [203783] by
-
- 2 edits in trunk/LayoutTests
Fix a typo in TestExpectations.
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 11:04 AM Changeset in webkit [203782] by
-
- 8 edits2 adds in trunk
Align CSSSupportsRule with the specification
https://bugs.webkit.org/show_bug.cgi?id=160256
Reviewed by Darin Adler.
Source/WebCore:
Align CSSSupportsRule with the specification:
In particular:
- Make the parameters to insertRule() / deleteRule() mandatory
- Expose CSSSupportsRule on the global Window object
Both Firefox and Chrome agree with the specification here.
Test: fast/css/CSSSupportsRule-parameters.html
- css/CSSSupportsRule.idl:
LayoutTests:
- fast/css/CSSSupportsRule-parameters-expected.txt: Added.
- fast/css/CSSSupportsRule-parameters.html: Added.
Add layout test coverage for mandatory parameters.
- platform/efl/js/dom/global-constructors-attributes-expected.txt:
- platform/gtk/js/dom/global-constructors-attributes-expected.txt:
- platform/mac-yosemite/js/dom/global-constructors-attributes-expected.txt:
- platform/mac/js/dom/global-constructors-attributes-expected.txt:
- platform/win/js/dom/global-constructors-attributes-expected.txt:
Rebaseline existing test now that CSSSupportsRule is exposed on the
global Window object.
- 10:15 AM Changeset in webkit [203781] by
-
- 2 edits in trunk/Tools
Disable WebCoreNSURLSessionTest API tests on ios-simulator
https://bugs.webkit.org/show_bug.cgi?id=160225
Reviewed by Alexey Proskuryakov.
- TestWebKitAPI/Tests/WebCore/WebCoreNSURLSession.mm:
- 10:03 AM Changeset in webkit [203780] by
-
- 2 edits in trunk/Source/WebKit2
Fix m_isInBackground initialization for Safari View Services
https://bugs.webkit.org/show_bug.cgi?id=160255
<rdar://problem/27569255>
Reviewed by Tim Horton.
Fix m_isInBackground initialization for Safari View Services. The
code was using m_applicationStateMonitor without initializing it.
Instead, use the local applicationStateMonitor and make sure we
invalidate it before it gets released.
- UIProcess/ApplicationStateTracker.mm:
(WebKit::ApplicationStateTracker::ApplicationStateTracker):
- 9:18 AM Changeset in webkit [203779] by
-
- 2 edits in trunk/LayoutTests
[GTK] Unreviewed gardening: update expectations after r203770
https://bugs.webkit.org/show_bug.cgi?id=160253
Unreviewed gardening.
Patch by Miguel Gomez <magomez@igalia.com> on 2016-07-27
- platform/gtk/TestExpectations:
- 9:14 AM Changeset in webkit [203778] by
-
- 2 edits in trunk/Source/WebInspectorUI
Regression(r203535): Uncaught Exception: TypeError: Not enough arguments at LayerTreeDataGridNode.js:47
https://bugs.webkit.org/show_bug.cgi?id=160187
<rdar://problem/27540435>
Reviewed by Eric Carlson.
After r203535, document.createTextNode() requires an argument.
- UserInterface/Views/LayerTreeDataGridNode.js:
(WebInspector.LayerTreeDataGridNode.prototype.createCellContent):
Since this use-site is for creating a cell in an unknown column,
initialize it to '–'. Previously it would have been the string
"undefined" or empty.
- 9:00 AM Changeset in webkit [203777] by
-
- 7 edits5 adds in trunk
[GTK] Fix some video/canvas tests that should be passing
https://bugs.webkit.org/show_bug.cgi?id=160023
Patch by Miguel Gomez <magomez@igalia.com> on 2016-07-27
Reviewed by Carlos Garcia Campos.
Tools:
Add a platform identifier to the TestRunner's page user agent when the tests are run on the
EFL or GTK platforms.
- WebKitTestRunner/efl/TestControllerEfl.cpp:
(WTR::TestController::platformConfigureViewForTest):
- WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::platformConfigureViewForTest):
LayoutTests:
Modify the tests to use a tolerance of 6 when running on the GTK or EFL platforms. Also,
added new expectations for the tests that need them.
- fast/canvas/canvas-createPattern-video-loading.html:
- fast/canvas/canvas-createPattern-video-modify.html:
- media/video-canvas-createPattern.html:
- platform/efl/fast/canvas/canvas-createPattern-video-loading-expected.txt: Added.
- platform/efl/fast/canvas/canvas-createPattern-video-modify-expected.txt: Added.
- platform/gtk/fast/canvas/canvas-createPattern-video-loading-expected.txt: Added.
- platform/gtk/fast/canvas/canvas-createPattern-video-modify-expected.txt: Added.
- resources/platform-helper.js: Added.
(isGtk):
(isEfl):
(videoCanvasPixelComparisonTolerance):
- 8:58 AM Changeset in webkit [203776] by
-
- 13 edits in trunk/Source/WebKit2
[Coordinated Graphics] Improve scheduling of tasks between threads in CoordinatedGraphicsScene
https://bugs.webkit.org/show_bug.cgi?id=160238
Reviewed by Michael Catanzaro.
This patch makes the following improvements:
- Avoid scheduling tasks to the main thread if the scene is detached.
- Do not take references when not actually sending tasks to another threads.
- Use Function instead of std::function on dispatch methods.
- Remove purgeBackingStores that is actually never called. It's only scheduled from purgeGLResources() that is always called after detach.
- Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
(WebKit::CoordinatedGraphicsScene::dispatchOnMainThread):
(WebKit::CoordinatedGraphicsScene::dispatchOnClientRunLoop):
(WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext):
(WebKit::CoordinatedGraphicsScene::updateViewport):
(WebKit::CoordinatedGraphicsScene::onNewBufferAvailable):
(WebKit::CoordinatedGraphicsScene::commitSceneState):
(WebKit::CoordinatedGraphicsScene::renderNextFrame):
(WebKit::CoordinatedGraphicsScene::purgeGLResources):
(WebKit::CoordinatedGraphicsScene::commitScrollOffset):
(WebKit::CoordinatedGraphicsScene::detach):
(WebKit::CoordinatedGraphicsScene::setActive):
(WebKit::CoordinatedGraphicsScene::dispatchCommitScrollOffset): Deleted.
(WebKit::CoordinatedGraphicsScene::purgeBackingStores): Deleted.
- Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h:
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
(WebKit::ThreadedCompositor::purgeBackingStores): Deleted.
- Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
- UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
(WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores): Deleted.
- UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
- WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.cpp:
(WebKit::CompositingCoordinator::invalidate):
- WebProcess/WebPage/CoordinatedGraphics/CompositingCoordinator.h:
- WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
(WebKit::CoordinatedLayerTreeHost::invalidate):
(WebKit::CoordinatedLayerTreeHost::purgeBackingStores): Deleted.
- WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
- WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in:
- WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h:
- 8:52 AM Changeset in webkit [203775] by
-
- 2 edits in trunk/Source/WebCore
[Soup] Test http/tests/xmlhttprequest/auth-reject-protection-space.html fails since added in r203743
https://bugs.webkit.org/show_bug.cgi?id=160235
Reviewed by Michael Catanzaro.
It times out in release and crashes in debug due to an ASSERT_NOT_REACHED(). The soup backend doesn't really
support rejecting the protection space and continuing with the next one, but we can at least continue with the
request without crendential to make the test pass.
- platform/network/soup/ResourceHandleSoup.cpp:
(WebCore::ResourceHandle::receivedChallengeRejection):
- 8:50 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 8:49 AM Changeset in webkit [203774] by
-
- 2 edits in trunk/Source/WebKit2
[GTK] Remove network setup from web process
https://bugs.webkit.org/show_bug.cgi?id=160236
Reviewed by Michael Catanzaro.
We are still doing network init and finish in th web process. It's useless since we switched to mandatory
network process.
- WebProcess/gtk/WebProcessMainGtk.cpp:
- 8:49 AM WebKitGTK/Gardening/Calendar edited by
- (diff)
- 8:30 AM Changeset in webkit [203773] by
-
- 2 edits in trunk/Tools
[Tools] The built product doesn't contains the dwo files when DEBUG_FISSION is enabled.
https://bugs.webkit.org/show_bug.cgi?id=160247
Reviewed by Michael Catanzaro.
- BuildSlaveSupport/built-product-archive:
(createZip):
(dirContainsdwo):
(archiveBuiltProduct):
- 3:40 AM Changeset in webkit [203772] by
-
- 23 edits4 moves in trunk
[Streams API] Replace ReadableStreamReader by ReadableStreamDefaultReader
https://bugs.webkit.org/show_bug.cgi?id=160194
Patch by Romain Bellessort <romain.bellessort@crf.canon.fr> on 2016-07-27
Reviewed by Youenn Fablet.
Replaced ReadableStreamReader by ReadableStreamDefaultReader to align
with updated Streams API specification.
No change in functionality.
Source/WebCore:
- CMakeLists.txt:
- DerivedSources.cpp:
- DerivedSources.make:
- Modules/fetch/FetchInternals.js:
(consumeStream):
- Modules/fetch/FetchResponse.js:
(body):
- Modules/streams/ReadableStream.js:
(getReader):
- Modules/streams/ReadableStreamDefaultReader.idl: Renamed from Source/WebCore/Modules/streams/ReadableStreamReader.idl.
- Modules/streams/ReadableStreamDefaultReader.js: Renamed from Source/WebCore/Modules/streams/ReadableStreamReader.js.
(cancel):
(read):
(releaseLock):
(closed):
- Modules/streams/ReadableStreamInternals.js:
(privateInitializeReadableStreamDefaultReader):
(teeReadableStream):
(teeReadableStreamPullFunction):
(isReadableStreamDefaultReader):
(closeReadableStream):
(readFromReadableStreamDefaultReader):
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/JSDOMGlobalObject.cpp:
(WebCore::JSDOMGlobalObject::addBuiltinGlobals):
(WebCore::JSDOMGlobalObject::finishCreation):
- bindings/js/JSReadableStreamPrivateConstructors.cpp:
(WebCore::constructJSReadableStreamDefaultReader):
(WebCore::JSBuiltinReadableStreamDefaultReaderPrivateConstructor::initializeExecutable):
(WebCore::createReadableStreamDefaultReaderPrivateConstructor):
- bindings/js/JSReadableStreamPrivateConstructors.h:
- bindings/js/WebCoreBuiltinNames.h:
- features.json:
LayoutTests:
- streams/brand-checks.html:
- streams/readable-stream-controller-error-expected.txt:
- streams/readable-stream-controller-error.html:
- streams/readable-stream-default-reader-read-expected.txt: Renamed from LayoutTests/streams/readable-stream-reader-read-expected.txt.
- streams/readable-stream-default-reader-read.html: Renamed from LayoutTests/streams/readable-stream-reader-read.html.
- streams/readable-stream-error-messages-expected.txt:
- streams/readable-stream-error-messages.html:
- streams/reference-implementation/readable-stream-reader-expected.txt:
- streams/shadowing-Promise-expected.txt:
- streams/shadowing-Promise.html:
- 3:07 AM Changeset in webkit [203771] by
-
- 4 edits6 adds in trunk
[css-grid] Handle alignment with orthogonal flows
https://bugs.webkit.org/show_bug.cgi?id=159295
Reviewed by Darin Adler.
Now that grid sizing and positioning issues wrt orthogonal flows have
been clarified in the last spec draft, we can adapt now our alignment
logic to work with orthogonal flows.
Source/WebCore:
Even though basic alignment would work with orthogonal flows with
this patch, we still doesn't allow stretching in that case. I'll provide a
patch for that feature since it's a complex logic and better have an
isolated change.
Tests: fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-vertical-lr.html
fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-vertical-rl.html
fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows.html
- rendering/RenderGrid.cpp:
(WebCore::computeOverflowAlignmentOffset): Using 'size' instead of 'breadth' as concept.
(WebCore::RenderGrid::columnAxisPositionForChild): Dealing with orthogonal flow cases.
(WebCore::RenderGrid::rowAxisPositionForChild): Dealing with orthogonal flow cases.
(WebCore::RenderGrid::columnAxisOffsetForChild): Using 'size' instead of 'breadth' as concept.
(WebCore::RenderGrid::rowAxisOffsetForChild): Using 'size' instead of 'breadth' as concept.
(WebCore::RenderGrid::findChildLogicalPosition): Dealing with orthogonal flow cases.
LayoutTests:
These tests ensure that alignment works as expected in the cases where
grid and its children are orthogonal.
- fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-expected.txt: Added.
- fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-vertical-lr-expected.txt: Added.
- fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-vertical-lr.html: Added.
- fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-vertical-rl-expected.txt: Added.
- fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows-vertical-rl.html: Added.
- fast/css-grid-layout/grid-item-alignment-with-orthogonal-flows.html: Added.
- fast/css-grid-layout/resources/grid-alignment.css:
(.alignContentSpaceBetween):
(.alignContentSpaceAround):
(.alignContentSpaceEvenly):
(.alignContentStretch):
(.selfStart):
(.selfEnd):
(.selfCenter):
(.selfRight):
(.selfLeft):
(.selfSelfStart):
(.selfSelfEnd):
(.itemsSelfEnd): Deleted.
- 12:42 AM Changeset in webkit [203770] by
-
- 2 edits in trunk/Source/WebKit/win
Fix Win debug build after r203749.
- WebView.cpp:
- 12:06 AM Changeset in webkit [203769] by
-
- 1 copy in releases/WebKitGTK/webkit-2.13.4
WebKitGTK+ 2.13.4
- 12:03 AM Changeset in webkit [203768] by
-
- 4 edits in trunk
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.13.4 release.
.:
- Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit2:
- gtk/NEWS: Add release notes for 2.13.4.