Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(295)

Issue 1161463009: bindings: Supports [LenientThis] extended attributes. (Closed)

Created:
5 years, 6 months ago by Yuki
Modified:
5 years, 6 months ago
Reviewers:
haraken, bashi
CC:
blink-reviews, blink-reviews-dom_chromium.org, arv+blink, vivekg_samsung, sof, eae+blinkwatch, vivekg, dglazkov+blink, blink-reviews-events_chromium.org, blink-reviews-bindings_chromium.org, Inactive, rwlbuis
Target Ref:
refs/remotes/origin/master
Project:
blink
Visibility:
Public.

Description

bindings: Supports [LenientThis] extended attributes. When we moved DOM attributes to the prototype chain, we changed the type of JS properties corresponding to the attributes to have get and set (i.e. accessor type). The change itself is correct, but it revealed that we don't support [LenientThis] and Blink started throwing TypeError when |this| is not a correct instance. In order to keep backward compatibility, this CL supports [LenientThis] extended attribute, and ignores type error for the following attributes. - GlobalEventHandlers - onmouseenter - onmouseleave - Document - onreadystatechange BUG=472260 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=196551

Patch Set 1 #

Patch Set 2 : Fixed; s/info.Holder()/info.This()/ in order to scan the instance itself. #

Patch Set 3 : Added a layout test for [LenientThis]. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+302 lines, -228 lines) Patch
M LayoutTests/webexposed/resources/global-interface-listing.js View 1 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/IDLExtendedAttributes.txt View 1 chunk +1 line, -0 lines 0 comments Download
M Source/bindings/core/v8/V8DOMConfiguration.h View 3 chunks +9 lines, -3 lines 0 comments Download
M Source/bindings/core/v8/V8DOMConfiguration.cpp View 1 chunk +5 lines, -0 lines 0 comments Download
M Source/bindings/scripts/v8_attributes.py View 2 chunks +2 lines, -1 line 0 comments Download
M Source/bindings/scripts/v8_methods.py View 1 chunk +2 lines, -0 lines 0 comments Download
M Source/bindings/templates/attributes.cpp View 1 4 chunks +22 lines, -1 line 0 comments Download
M Source/bindings/tests/idls/core/TestInterface.idl View 1 chunk +2 lines, -0 lines 0 comments Download
M Source/bindings/tests/results/core/V8SVGTestInterface.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/tests/results/core/V8TestException.cpp View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/bindings/tests/results/core/V8TestInterface.cpp View 1 4 chunks +62 lines, -23 lines 0 comments Download
M Source/bindings/tests/results/core/V8TestInterfaceAccessors.cpp View 1 chunk +2 lines, -2 lines 0 comments Download
M Source/bindings/tests/results/core/V8TestInterfaceCheckSecurity.cpp View 1 chunk +7 lines, -7 lines 0 comments Download
M Source/bindings/tests/results/core/V8TestInterfaceEventInitConstructor.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/tests/results/core/V8TestInterfaceGarbageCollected.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/tests/results/core/V8TestInterfaceNode.cpp View 1 chunk +7 lines, -7 lines 0 comments Download
M Source/bindings/tests/results/core/V8TestInterfaceOwnProperties.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/tests/results/core/V8TestInterfaceOwnPropertiesDerived.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/tests/results/core/V8TestNode.cpp View 1 chunk +4 lines, -4 lines 0 comments Download
M Source/bindings/tests/results/core/V8TestObject.cpp View 3 chunks +157 lines, -157 lines 0 comments Download
M Source/bindings/tests/results/core/V8TestTypedefs.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/tests/results/modules/V8TestInterface5.cpp View 2 chunks +8 lines, -8 lines 0 comments Download
M Source/core/dom/Document.idl View 1 chunk +1 line, -3 lines 0 comments Download
M Source/core/dom/GlobalEventHandlers.idl View 1 chunk +2 lines, -3 lines 0 comments Download

Messages

Total messages: 9 (2 generated)
Yuki
Could you guys review this CL?
5 years, 6 months ago (2015-06-04 10:38:17 UTC) #2
haraken
The change looks good. Can we add a layout test?
5 years, 6 months ago (2015-06-04 10:42:40 UTC) #3
Yuki
On 2015/06/04 10:42:40, haraken wrote: > The change looks good. Can we add a layout ...
5 years, 6 months ago (2015-06-04 14:08:19 UTC) #4
haraken
LGTM
5 years, 6 months ago (2015-06-04 14:39:28 UTC) #5
bashi
LGTM
5 years, 6 months ago (2015-06-05 00:17:17 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1161463009/40001
5 years, 6 months ago (2015-06-05 04:00:34 UTC) #8
commit-bot: I haz the power
5 years, 6 months ago (2015-06-05 04:04:37 UTC) #9
Message was sent while issue was closed.
Committed patchset #3 (id:40001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=196551

Powered by Google App Engine
This is Rietveld 408576698