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, peforminginstanceofis 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: