⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Sep 20, 2015:

10:06 PM Changeset in webkit [190043] by Sukolsak Sakshuwong
  • 10 edits in trunk/Source/JavaScriptCore

Implement SetLocal and SetGlobal expressions in WebAssembly
https://bugs.webkit.org/show_bug.cgi?id=149383

Reviewed by Saam Barati.

SetLocal and SetGlobal in WebAssembly can be both statements and
expressions. We have implemented the statement version. This patch
implements the expression version.

SetLocal and SetGlobal expressions return the assigned value.
Since SetLocal and SetGlobal use only one operand, which is the assigned
value, we can simply implement them by not removing the value from the
top of the stack.

  • tests/stress/wasm-globals.js:
  • tests/stress/wasm-locals.js:
  • tests/stress/wasm/globals.wasm:
  • tests/stress/wasm/locals.wasm:
  • wasm/WASMConstants.h:
  • wasm/WASMFunctionCompiler.h:

(JSC::WASMFunctionCompiler::buildSetLocal):
(JSC::WASMFunctionCompiler::buildSetGlobal):

  • wasm/WASMFunctionParser.cpp:

(JSC::WASMFunctionParser::parseStatement):
(JSC::WASMFunctionParser::parseExpressionI32):
(JSC::WASMFunctionParser::parseExpressionF32):
(JSC::WASMFunctionParser::parseExpressionF64):
(JSC::WASMFunctionParser::parseSetLocal):
(JSC::WASMFunctionParser::parseSetGlobal):
(JSC::WASMFunctionParser::parseSetLocalStatement): Deleted.
(JSC::WASMFunctionParser::parseSetGlobalStatement): Deleted.

  • wasm/WASMFunctionParser.h:
  • wasm/WASMFunctionSyntaxChecker.h:

(JSC::WASMFunctionSyntaxChecker::buildSetLocal):
(JSC::WASMFunctionSyntaxChecker::buildSetGlobal):

9:36 PM Changeset in webkit [190042] by commit-queue@webkit.org
  • 1 edit
    1 add in trunk/Source/JavaScriptCore

[ES6] Added controlFlowProfiler test for arrow function
https://bugs.webkit.org/show_bug.cgi?id=145638

Patch by Aleksandr Skachkov <gskachkov@gmail.com> on 2015-09-19
Reviewed by Saam Barati.

  • Source/JavaScriptCore/tests/controlFlowProfiler/arrowfunction-expression.js: added
9:26 PM Changeset in webkit [190041] by aestes@apple.com
  • 3 edits
    3 adds in trunk/LayoutTests

http/tests/contentfiltering/load-substitute-data-from-appcache.html crashes sometimes
https://bugs.webkit.org/show_bug.cgi?id=148890

Reviewed by Alexey Proskuryakov.

Added a test to verify my theory that load-substitute-data-from-appcache.html will crash even with Content Filtering disabled.

  • TestExpectations: Skipped the new test since it only works in WebKit2.
  • http/tests/appcache/decide-navigation-policy-after-delay-expected.txt: Added.
  • http/tests/appcache/decide-navigation-policy-after-delay.html: Added.
  • http/tests/appcache/resources/decide-navigation-policy-after-delay-frame.html: Added.
  • platform/wk2/TestExpectations: Enabled the test in WebKit2.
8:39 PM Changeset in webkit [190040] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed attempt to fix GTK build after r190030.

  • bindings/gobject/WebKitDOMCustom.cpp:

(webkit_dom_html_link_element_set_sizes):

8:33 PM Changeset in webkit [190039] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Unreviewed, another GTK build fix after r190017.

  • bindings/scripts/CodeGeneratorGObject.pm:

(IsPropertyWriteable):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:

(webkit_dom_test_obj_class_init):
(webkit_dom_test_obj_set_property): Deleted.

8:24 PM Changeset in webkit [190038] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Unreviewed attempt to fix the GTK build after r190017.

  • bindings/scripts/CodeGeneratorGObject.pm:

(SkipFunction):

8:01 PM Changeset in webkit [190037] by Chris Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed, rebaseline W3C HTML DOM test on iOS after r190030.

  • platform/ios-simulator/imported/w3c/web-platform-tests/html/dom/interfaces-expected.txt:
7:42 PM Changeset in webkit [190036] by Chris Dumez
  • 72 edits in trunk/Source/WebCore

Pass JSC::ExecState to the custom bindings by reference
https://bugs.webkit.org/show_bug.cgi?id=149393

Reviewed by Sam Weinig.

Pass JSC::ExecState to the custom bindings by reference instead of by
pointer as it is expected to be non-null.

5:28 PM Changeset in webkit [190035] by ap@apple.com
  • 3 edits in trunk/Tools

WebKitTestRunner can leak user content script results between tests
https://bugs.webkit.org/show_bug.cgi?id=149391

Reviewed by Sam Weinig.

Move WKBundlePageRemoveAllUserContent call so that it's executed before loading
about:blank, and thus about:blank doesn't have unintended side effects.

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::beginTesting):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::resetAfterTest):

4:24 PM Changeset in webkit [190034] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Regression(r190023): fast/dom/navigation-with-sideeffects-crash.html is crashing
https://bugs.webkit.org/show_bug.cgi?id=149392

Reviewed by Alexey Proskuryakov.

In the generated code for [PutForwards=xxx], make sure the forwarded
implementation object is ref'd before calling toString() as toString()
can be overridden by JS and cause the object to get deref'd / destroyed.

No new tests, already covered by existing test.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::setJSTestObjPutForwardsAttribute):
(WebCore::setJSTestObjPutForwardsNullableAttribute):

12:52 PM Changeset in webkit [190033] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Fix a relative path in accessibility/mac/removing-textarea-after-edit-crash.html
after moving the test.
https://bugs.webkit.org/show_bug.cgi?id=149217

Patch by Chris Fleizach <Chris Fleizach> on 2015-09-20
Reviewed by Alexey Proskuryakov.

  • accessibility/mac/removing-textarea-after-edit-crash.html:
12:20 PM Changeset in webkit [190032] by Sukolsak Sakshuwong
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/contributors.json

Unreviewed, updated my email address.

  • Scripts/webkitpy/common/config/contributors.json:
9:44 AM Changeset in webkit [190031] by bshafiei@apple.com
  • 4 edits
    2 copies in branches/safari-601.1.46-branch

Merged r189997. rdar://problem/22772263

9:43 AM Changeset in webkit [190030] by Chris Dumez
  • 29 edits
    1 delete in trunk

Get rid of custom bindings for HTMLLinkElement.sizes setter
https://bugs.webkit.org/show_bug.cgi?id=149382

Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

  • web-platform-tests/html/dom/interfaces-expected.txt:

Rebaseline test. Our bindings generator does not move attributes that have
a custom setter from the instance to the prototype. Now that the 'sizes'
attribute no longer has a custom setter, it has moved to the prototype,
where it is expected to be.

Source/WebCore:

Get rid of custom bindings for HTMLLinkElement.sizes setter by leveraging
the new [PutForwards=xxx] Web IDL extended attribute, as per the HTML
specification:

Also add FIXME comments in our IDL for various attributes that should be
using [PutForwards=xxx] according to the HTML specification but are not
currently. Those were not updated in this patch because it will subtly
change their web-exposed behavior.

No new tests, no intended web-exposed behavior change. However, one side
effect of the change is that the attribtue has moved to the prototype.
Our bindings generator was keeping this attribute on the instance because
it has a custom setter.
Bindings tests coverage was extended.

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSHTMLLinkElementCustom.cpp: Removed.

Drop custom bindings for HTMLLinkElement.sizes setter.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • Stop passing an extra isNull argument to getters of nullable attributes that have a wrapper type. These can return a null pointer so there is no need for an extra argument.
  • When [PutForwards=xxx] is used, only do the null-check on the attribute getter if the attribute is marked as nullable. If the attribute is not marked as nullable, the implementation is expected to return a C++ reference, otherwise a raw pointer. This was needed because HTMLLinkElement::sizes() returns a reference as it can never return null.
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:
  • bindings/scripts/test/TestObj.idl:

Add bindings tests coverage for using [PutForwards=xxx] on a
nullable attribute.

  • dom/Document.idl:

Mark Document.location as nullable as per the specification. The
implementation returns a raw pointer and can return null. The
bindings generator expects a raw pointer and will do a null check
on it.

  • html/HTMLAnchorElement.idl:
  • html/HTMLAreaElement.idl:
  • html/HTMLElement.idl:
  • html/HTMLIFrameElement.idl:
  • html/HTMLOutputElement.idl:
  • html/HTMLTableCellElement.idl:

Add FIXME comments for attributes that are supposed to use
[PutForwards=xxx] as per the HTML specification but currently don't.

  • html/HTMLLinkElement.idl:

Use [PutForwards=value] for the 'sizes' attribute, as per the
specification and stop using a custom setter.

9:41 AM Changeset in webkit [190029] by bshafiei@apple.com
  • 3 edits in branches/safari-601.1.46-branch/Source/WebKit2

Merged r189944. rdar://problem/22763066

9:41 AM Changeset in webkit [190028] by Chris Dumez
  • 52 edits in trunk/Source/WebCore

[CallWith=ScriptState] should pass ExecState to the implementation by reference
https://bugs.webkit.org/show_bug.cgi?id=149378

Reviewed by Sam Weinig.

[CallWith=ScriptState] should pass ExecState to the implementation by
reference instead of pointer, as it is expected to be non-null.

Also rename the ExecState variables from 'exec' to 'state' in the
bindings as this is the preferred naming convention.

  • Modules/indexeddb/IDBCursor.h:
  • Modules/indexeddb/IDBObjectStore.h:
  • Modules/indexeddb/legacy/LegacyCursor.cpp:

(WebCore::LegacyCursor::update):

  • Modules/indexeddb/legacy/LegacyCursor.h:
  • Modules/indexeddb/legacy/LegacyObjectStore.cpp:

(WebCore::LegacyObjectStore::add):
(WebCore::LegacyObjectStore::put):

  • Modules/indexeddb/legacy/LegacyObjectStore.h:
  • Modules/mediastream/CapabilityRange.cpp:

(WebCore::scriptValue):
(WebCore::CapabilityRange::min):
(WebCore::CapabilityRange::max):

  • Modules/mediastream/CapabilityRange.h:
  • Modules/streams/ReadableStreamController.h:

(WebCore::ReadableStreamController::error):
(WebCore::ReadableStreamController::enqueue):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateEventListenerCall):
(GenerateGetOwnPropertySlotBody):
(GenerateHeader):
(GenerateOverloadedFunction):
(GetIndexedGetterExpression):
(GenerateImplementation):
(GenerateFunctionCastedThis):
(GenerateCallWith):
(GenerateArgumentsCountCheck):
(GenerateParametersCheck):
(GenerateReturnParameters):
(GenerateCallbackHeader):
(GenerateCallbackImplementation):
(GenerateImplementationFunctionCall):
(JSValueToNative):
(NativeToJSValue):
(GenerateOverloadedConstructorDefinition):
(GenerateConstructorDefinition):

9:37 AM Changeset in webkit [190027] by bshafiei@apple.com
  • 5 edits in branches/safari-601.1.46-branch/Source

Versioning.

8:30 AM Changeset in webkit [190026] by ap@apple.com
  • 5 edits in trunk

[Mac, iOS] AccessibilityController doesn't uninstall global notification handler
https://bugs.webkit.org/show_bug.cgi?id=149384

Reviewed by Chris Fleizach.

Tools:

  • DumpRenderTree/ios/AccessibilityControllerIOS.mm:

(AccessibilityController::addNotificationListener): Fixed a leak, and cleaned up the code.
(AccessibilityController::platformResetToConsistentState): Actually remove the handler,
regardless of whether someone else holds a reference (we also call -stopListening in
-dealloc).

  • DumpRenderTree/mac/AccessibilityControllerMac.mm:

(AccessibilityController::platformResetToConsistentState):
(AccessibilityController::addNotificationListener):
Ditto.

LayoutTests:

  • accessibility/mac/loaded-notification.html: Cleaned up the test - js-test-pre is

incompatible with directly using waitUntilDone.

3:30 AM Changeset in webkit [190025] by youenn.fablet@crf.canon.fr
  • 21 edits in trunk

.:
Removing XHR_TIMEOUT guard

Remove XHR_TIMEOUT compilation guard
https://bugs.webkit.org/show_bug.cgi?id=149260

Reviewed by Benjamin Poulain.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/OptionsMac.cmake:
  • Source/cmake/OptionsWin.cmake:
  • Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:
Remove XHR_TIMEOUT compilation guard
https://bugs.webkit.org/show_bug.cgi?id=149260

Reviewed by Benjamin Poulain.

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:
Remove XHR_TIMEOUT compilation guard
https://bugs.webkit.org/show_bug.cgi?id=149260

Reviewed by Benjamin Poulain.

Covered by existing tests.

  • Configurations/FeatureDefines.xcconfig:
  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::XMLHttpRequest):
(WebCore::XMLHttpRequest::didFail):
(WebCore::XMLHttpRequest::didReachTimeout):
(WebCore::XMLHttpRequest::setTimeout):
(WebCore::XMLHttpRequest::setResponseType):
(WebCore::XMLHttpRequest::open):
(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::internalAbort):
(WebCore::XMLHttpRequest::didFailRedirectCheck):
(WebCore::XMLHttpRequest::didSendData):
(WebCore::XMLHttpRequest::suspend):

  • xml/XMLHttpRequest.h:
  • xml/XMLHttpRequest.idl:

Source/WebKit/mac:
Remove XHR_TIMEOUT compilation guard
https://bugs.webkit.org/show_bug.cgi?id=149260

Reviewed by Benjamin Poulain.

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:
Remove XHR_TIMEOUT compilation guard
https://bugs.webkit.org/show_bug.cgi?id=149260

Reviewed by Benjamin Poulain.

  • Configurations/FeatureDefines.xcconfig:

Source/WTF:
Remove XHR_TIMEOUT compilation guard
https://bugs.webkit.org/show_bug.cgi?id=149260

Reviewed by Benjamin Poulain.

  • wtf/FeatureDefines.h:

Tools:
Remove XHR_TIMEOUT compilation guard
https://bugs.webkit.org/show_bug.cgi?id=149260

Reviewed by Benjamin Poulain.

  • Scripts/webkitperl/FeatureList.pm:
12:38 AM Changeset in webkit [190024] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Add two missing files to the Xcode project

  • WebCore.xcodeproj/project.pbxproj:

These are imported by files that are built for Mac, but missing from the project.

Sep 19, 2015:

6:59 PM Changeset in webkit [190023] by Chris Dumez
  • 18 edits in trunk/Source/WebCore

[Web IDL] Add support for [PutForwards=XXX] IDL extended attribute
https://bugs.webkit.org/show_bug.cgi?id=149376

Reviewed by Darin Adler.

[Web IDL] Add support for [PutForwards=XXX] IDL extended attribute:
https://heycam.github.io/webidl/#PutForwards

As an initial proof of concept, use it for Document.location as per the
HTML specification, instead of using custom bindings:
https://html.spec.whatwg.org/multipage/dom.html#the-document-object

More attributes can be ported later.

No new tests, no web-exposed behavior change intended. Bindings tests
coverage was added.

  • bindings/js/JSDocumentCustom.cpp:

Drop custom bindings for the location attribute setter.

  • bindings/scripts/CodeGenerator.pm:

(GetAttributeFromInterface):
Add convenience function that returned an attribute from another
interface. This is used by [PutForwards] to retrieve the forwarded
attribute.

  • bindings/scripts/CodeGeneratorJS.pm:

(IsReadonly):
(GenerateImplementation):

  • bindings/scripts/IDLAttributes.txt:

Add support for [PutForwards=XXX] IDL extended attribute.

  • bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestNode.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestNode.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/ObjC/DOMTestNode.h:
  • bindings/scripts/test/ObjC/DOMTestNode.mm:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:

Add binding tests coverage for [PutForwards=XXX] IDL extended
attribute.

  • dom/Document.idl:

Use [PutForwards=href] for Document.location attribute, as per the HTML
specification and stop using custom bindings for the setter. Also mark
the attribute as readonly as all attributes using [PutForwards] must be
marked as readonly as per the Web IDL specification.

6:09 PM Changeset in webkit [190022] by Yusuke Suzuki
  • 2 edits in trunk/Source/JavaScriptCore

[GTK] Unreviewed, should check the result of fread
https://bugs.webkit.org/show_bug.cgi?id=148917

Suppress the build warning on GTK with GCC.

  • jsc.cpp:

(fillBufferWithContentsOfFile):
(fetchModuleFromLocalFileSystem):

5:45 PM Changeset in webkit [190021] by Chris Dumez
  • 18 edits
    2 adds in trunk

[WebIDL] Specify default parameter values where it is useful
https://bugs.webkit.org/show_bug.cgi?id=149331
<rdar://problem/22545600>

Reviewed by Darin Adler.

Source/WebCore:

Specify default parameter values where it is useful in our IDL, that is
to say where undefined would be converted to something else than the
default value otherwise. This patch focuses on the HTML API.

This patch also adds support for default values for optional parameters
of string enumeration type as this was needed by the
CanvasRenderingContext2D API.

Test: fast/html/undefined-parameter-default-value.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateParametersCheck):
Add support default values for optional parameters of string enumeration
type as this was needed by the CanvasRenderingContext2D API.

  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:
  • bindings/scripts/test/TestObj.idl:

Add bindings tests coverage for optional parameters of string enumeration
type and that have a default value.

  • html/HTMLInputElement.idl:

Specify default parameter value for stepUp() / stepDown(). Without this,
stepUp(undefined) would be equivalent to calling stepUp(0) even though
it is supposed to be equivalent to calling stepUp(1).

  • html/HTMLTableElement.idl:
  • html/HTMLTableSectionElement.idl:

Specify default parameter value for insertRow(). Without this,
insertRow(undefined) would be equivalent to insertRow(0) instead of
insertRow(-1). This would prepend the row instead of appending it:

  • html/HTMLTableRowElement.idl:

Specify default parameter value for insertCell(). Without this,
insertCell(undefined) would be equivalent to insertCell(0) instead of
insertCell(-1). This would prepend the cell instead of appending it:

  • html/canvas/CanvasRenderingContext2D.idl:

Specify default value for CanvasWindingRule parameters so that calling
this with undefined will use the default enum value instead of using the
"undefined" string and then throwing because it is not a valid enum value:

LayoutTests:

Add test to check the behavior of passing undefined for various optional
parameters that have a default value in the HTML specification.

  • fast/html/undefined-parameter-default-value-expected.txt: Added.
  • fast/html/undefined-parameter-default-value.html: Added.
5:43 PM Changeset in webkit [190020] by eric.carlson@apple.com
  • 8 edits in trunk/Source/WebCore

Cleanup code that finds and loads a media engine
https://bugs.webkit.org/show_bug.cgi?id=149371

Reviewed by Darin Adler.

No new tests, no functional change.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::setRegistry): New, set the registry.
(WebCore::MediaStream::lookup): New, lookup a url in the registry.

  • Modules/mediastream/MediaStream.h:
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::loadResource): Restructure and simplify the code that tries the

different types of media engine so the code is easier to understand and modify.

(WebCore::HTMLMediaElement::createMediaPlayer): Clear m_mediaStreamSrcObject.

  • platform/graphics/MediaPlayer.cpp:

(WebCore::buildMediaEnginesVector): Add some whitespace to make it easier to read.
(WebCore::bestMediaEngineForSupportParameters): Also process mediastream and mediasource urls.
(WebCore::MediaPlayer::load): ASSERT if called when the reload timer is active.
(WebCore::MediaPlayer::loadWithNextMediaEngine): Also process mediastream and mediasource urls.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsType): Don't test empty/null urls.

  • platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:

(WebCore::MockMediaPlayerMediaSource::supportsType): Ditto.

5:17 PM Changeset in webkit [190019] by Michael Catanzaro
  • 2 edits in trunk/Source/WebKit2

[GTK] WebEditorClient::supportsGlobalSelection returns true under Wayland
https://bugs.webkit.org/show_bug.cgi?id=149375

Reviewed by Darin Adler.

WebEditorClient::supportsGlobalSelection should return false when running under Wayland,
since Wayland does not have any equivalent for PRIMARY or the concept of a global selection.

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::supportsGlobalSelection):

3:36 PM WebKitIDL edited by Chris Dumez
Add [SetterCallWith] (diff)
3:07 PM Changeset in webkit [190018] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Attempted build fix.

  • mac/postprocess-framework-headers.sh: Fixed an overzealous regular expression.
2:37 PM Changeset in webkit [190017] by Chris Dumez
  • 17 edits in trunk/Source/WebCore

Get rid of most custom bindings for Location.idl
https://bugs.webkit.org/show_bug.cgi?id=149370

Reviewed by Darin Adler.

Get rid of most custom bindings for Location.idl by extending support
for the [CallWith=XXX] IDL extended attribute to support 2 additional
values: ActiveWindow and FirstWindow. Also introduce a
[SetterCallWith=XXX] alternative that passes the extra arguments to
the attribute setter only, as is needed by the Location attributes.

No new tests, no intended web-exposed behavior change.

  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:
  • bindings/scripts/test/TestObj.idl:

Add bindings tests coverage for [SetterCallWith=XXX].

  • page/Location.idl:

Also drop [DoNotCheckSecurityOnSetter] on href attribute. It has
no effet as the interface does not have [CheckSecurity].

2:05 PM Changeset in webkit [190016] by mitz@apple.com
  • 2 edits in trunk/Tools

Attempted build fix.

  • WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
11:15 AM Changeset in webkit [190015] by Chris Dumez
  • 6 edits in trunk/Source/WebCore

Get rid of custom bindings for Document.location getter
https://bugs.webkit.org/show_bug.cgi?id=149369

Reviewed by Andreas Kling.

Get rid of custom bindings for Document.location getter by defining
a location getter on Document that calls the one on the document's
DOMWindow. The DOMWindow location getter already has an
isCurrentlyDisplayedInFrame() check so the document does not need
to do a null check on the frame.

No new tests, no web-exposed behavior change intended.

  • bindings/js/JSDocumentCustom.cpp:

(WebCore::JSDocument::location): Deleted.

  • dom/Document.cpp:

(WebCore::Document::location):

  • dom/Document.h:
  • dom/Document.idl:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::location):

8:36 AM Changeset in webkit [190014] by sbarati@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

VariableEnvironmentNode should inherit from ParserArenaDeletable because VariableEnvironment's must have their destructors run
https://bugs.webkit.org/show_bug.cgi?id=149359

Reviewed by Andreas Kling.

VariableEnvironment must have its destructor run.
Therefore, VariableEnvironmentNode should inherit from ParserArenaDeletable.
Also, anything that inherits from VariableEnvironmentNode must use
ParserArenaDeletable's operator new. Also, any other nodes that own
a VariableEnvironment must also have their destructors run.

  • parser/Nodes.h:

(JSC::VariableEnvironmentNode::VariableEnvironmentNode):

2:59 AM Changeset in webkit [190013] by dino@apple.com
  • 3 edits
    2 adds in trunk

Null dereference loading Blink layout test svg/filters/feImage-failed-load-crash.html
https://bugs.webkit.org/show_bug.cgi?id=149316
<rdar://problem/22749532>

Reviewed by Tim Horton.

Source/WebCore:

If an feImage triggered loading a resource, and then was removed from the document,
we'd still try to notify its parent when the resource arrived (or failed).

Merge Blink commit:
https://chromium.googlesource.com/chromium/blink/+/9cbcfd7866bbaff0c4b3c4c8508b7c97b46d6e6a

Test: svg/filters/feImage-failed-load-crash.html

  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::notifyFinished): Add a null check to the parent element
before sending the notification.

LayoutTests:

Merge Blink commit:
https://chromium.googlesource.com/chromium/blink/+/9cbcfd7866bbaff0c4b3c4c8508b7c97b46d6e6a

  • svg/filters/feImage-failed-load-crash-expected.txt: Added.
  • svg/filters/feImage-failed-load-crash.html: Added.
2:56 AM Changeset in webkit [190012] by dino@apple.com
  • 3 edits
    6 adds in trunk

Null dereference loading Blink layout test svg/custom/use-href-attr-removal-crash.html
https://bugs.webkit.org/show_bug.cgi?id=149315
<rdar://problem/22749358>

Reviewed by Tim Horton.

Source/WebCore:

We were not checking if the corresponding element referenced from
the SVG <use> actually existed before trying to set attributes on it.
The original Blink change is a little more detailed:
https://chromium.googlesource.com/chromium/blink/+/e2f1087f32bb088160ab7d59a715a1403ef267c7
However, we've significantly diverged at this point.

Tests: svg/custom/use-href-attr-removal-crash.html

svg/custom/use-href-attr-removal-crash2.svg
svg/custom/use-href-change-local-to-invalid-remote.html

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::transferSizeAttributesToTargetClone):

LayoutTests:

These tests, copied from Blink, should not crash.
The originals come from:
https://chromium.googlesource.com/chromium/blink/+/e2f1087f32bb088160ab7d59a715a1403ef267c7

  • svg/custom/use-href-attr-removal-crash.html: Added.
  • svg/custom/use-href-attr-removal-crash-expected.txt: Added.
  • svg/custom/use-href-attr-removal-crash2.svg: Added.
  • svg/custom/use-href-attr-removal-crash2-expected.txt: Added.
  • svg/custom/use-href-change-local-to-invalid-remote.html: Added.
  • svg/custom/use-href-change-local-to-invalid-remote-expected.txt: Added.
1:57 AM Changeset in webkit [190011] by achristensen@apple.com
  • 2 edits in trunk/Source/WebKit

Fix Windows tests after r189934.

  • CMakeLists.txt:

Include WebKit.rc to include resources like missingImage.png in WebKit.dll.

Note: See TracTimeline for information about the timeline view.