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

Issue 2733763003: Reimplement [PutForwards] per spec (Closed)

Created:
3 years, 9 months ago by Jens Widell
Modified:
3 years, 7 months ago
CC:
blink-reviews, blink-reviews-bindings_chromium.org, chromium-reviews
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Reimplement [PutForwards] per spec An attribute setter for an attribute X with [PutForwards=Y] should mostly just do Set(Get(this, X), Y, value) With the previous implementation, we instead essentially inlined both the getting of X and setting of Y into the setter. This is unnecessary (both will be implemented correctly separately) and also incorrect, since both the getter for X and setter for Y could be overridden by a script. BUG=683310 Review-Url: https://codereview.chromium.org/2733763003 Cr-Commit-Position: refs/heads/master@{#470864} Committed: https://chromium.googlesource.com/chromium/src/+/0fda810e000bd150860e33350b4a589d4acda1f9

Patch Set 1 #

Total comments: 6

Patch Set 2 : rebase #

Total comments: 6

Patch Set 3 : fixes #

Total comments: 3

Patch Set 4 : avoid using v8::Maybe #

Unified diffs Side-by-side diffs Delta from patch set Stats (+707 lines, -117 lines) Patch
M third_party/WebKit/LayoutTests/fast/frames/sandboxed-iframe-navigation-top-denied-expected.txt View 1 chunk +1 line, -1 line 0 comments Download
A third_party/WebKit/LayoutTests/fast/js/put-forwards.html View 1 chunk +106 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/scripts/v8_attributes.py View 1 1 chunk +6 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl View 1 2 3 5 chunks +22 lines, -10 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8SVGTestInterface.cpp View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestCallbackFunctions.cpp View 1 2 2 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexed.cpp View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexedGlobal.cpp View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexedPrimaryGlobal.cpp View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface.cpp View 1 2 44 chunks +97 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceCheckSecurity.cpp View 1 2 3 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceDocument.cpp View 1 2 3 1 chunk +13 lines, -10 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceGarbageCollected.cpp View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNode.cpp View 1 2 5 chunks +10 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceOriginTrialEnabled.cpp View 1 2 3 chunks +7 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceSecureContext.cpp View 1 2 6 chunks +12 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestNode.cpp View 1 2 4 chunks +8 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp View 1 2 3 135 chunks +377 lines, -89 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestTypedefs.cpp View 1 2 2 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/V8TestInterface5.cpp View 1 2 9 chunks +19 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/modules/V8TestInterfacePartial.cpp View 1 2 2 chunks +5 lines, -0 lines 0 comments Download

Messages

Total messages: 50 (10 generated)
Jens Widell
PTAL This patch is a bit preliminary; see my comments. https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode296 ...
3 years, 9 months ago (2017-03-06 14:05:28 UTC) #2
haraken
https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode296 third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl:296: {% set check_security_for_receiver = attribute.is_check_security_for_receiver and not attribute.is_data_type_property %} ...
3 years, 9 months ago (2017-03-06 18:57:28 UTC) #4
Jens Widell
On 2017/03/06 18:57:28, haraken wrote: > Just to confirm: This CL is not changing the ...
3 years, 9 months ago (2017-03-07 09:36:41 UTC) #5
jochen (gone - plz use gerrit)
https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode345 third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl:345: target.As<v8::Object>()->Set(info.GetIsolate()->GetEnteredContext(), v8String(info.GetIsolate(), "{{attribute.target_attribute_name}}"), v8Value).IsNothing(); On 2017/03/06 at 18:57:28, haraken ...
3 years, 9 months ago (2017-03-07 11:45:06 UTC) #6
Jens Widell
On 2017/03/07 11:45:06, jochen wrote: > https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl > File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): > > https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode345 > ...
3 years, 9 months ago (2017-03-07 11:49:07 UTC) #7
haraken
https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): https://codereview.chromium.org/2733763003/diff/1/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode345 third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl:345: target.As<v8::Object>()->Set(info.GetIsolate()->GetEnteredContext(), v8String(info.GetIsolate(), "{{attribute.target_attribute_name}}"), v8Value).IsNothing(); On 2017/03/07 11:45:06, jochen wrote: ...
3 years, 9 months ago (2017-03-07 12:15:22 UTC) #8
jochen (gone - plz use gerrit)
On 2017/03/07 at 11:49:07, jl wrote: > > GetEnteredContext is also wrong during microtask execution ...
3 years, 9 months ago (2017-03-07 12:21:52 UTC) #9
jochen (gone - plz use gerrit)
trying to fix this here: https://codereview.chromium.org/2738533003
3 years, 9 months ago (2017-03-07 12:22:06 UTC) #10
Jens Widell
On 2017/03/07 at 12:15:22, haraken wrote: > Jens: I'm confused. The context parameter in Get()/Set() ...
3 years, 9 months ago (2017-03-07 12:27:43 UTC) #11
haraken
On 2017/03/07 12:27:43, Jens Widell wrote: > On 2017/03/07 at 12:15:22, haraken wrote: > > ...
3 years, 9 months ago (2017-03-07 13:03:35 UTC) #12
Yuki
On 2017/03/07 13:03:35, haraken wrote: > On 2017/03/07 12:27:43, Jens Widell wrote: > > On ...
3 years, 9 months ago (2017-03-07 13:17:07 UTC) #13
Jens Widell
On 2017/03/07 at 13:17:07, yukishiino wrote: > On 2017/03/07 13:03:35, haraken wrote: > > On ...
3 years, 9 months ago (2017-03-07 13:23:59 UTC) #14
Yuki
On 2017/03/07 13:23:59, Jens Widell wrote: > On 2017/03/07 at 13:17:07, yukishiino wrote: > > ...
3 years, 9 months ago (2017-03-07 13:28:14 UTC) #15
haraken
On 2017/03/07 13:28:14, Yuki(slow_til_mar08) wrote: > On 2017/03/07 13:23:59, Jens Widell wrote: > > On ...
3 years, 9 months ago (2017-03-07 13:49:37 UTC) #16
Jens Widell
On 2017/03/07 at 13:49:37, haraken wrote: > I think we should just unconditionally pass CurrentContext ...
3 years, 9 months ago (2017-03-07 14:23:17 UTC) #17
haraken
On 2017/03/07 14:23:17, Jens Widell wrote: > On 2017/03/07 at 13:49:37, haraken wrote: > > ...
3 years, 9 months ago (2017-03-07 14:33:40 UTC) #18
Jens Widell
On 2017/03/07 at 14:33:40, haraken wrote: > On 2017/03/07 14:23:17, Jens Widell wrote: > > ...
3 years, 9 months ago (2017-03-07 14:40:21 UTC) #19
haraken
On 2017/03/07 14:40:21, Jens Widell wrote: > On 2017/03/07 at 14:33:40, haraken wrote: > > ...
3 years, 9 months ago (2017-03-07 14:48:24 UTC) #20
Jens Widell
On 2017/03/07 at 14:48:24, haraken wrote: > On 2017/03/07 14:40:21, Jens Widell wrote: > > ...
3 years, 9 months ago (2017-03-07 14:56:44 UTC) #21
haraken
On 2017/03/07 14:56:44, Jens Widell wrote: > On 2017/03/07 at 14:48:24, haraken wrote: > > ...
3 years, 9 months ago (2017-03-07 15:01:01 UTC) #22
Jens Widell
On 2017/03/07 at 15:01:01, haraken wrote: > When V8 calls window.location, V8 sets the current ...
3 years, 9 months ago (2017-03-07 15:16:56 UTC) #23
Yuki
On 2017/03/07 15:16:56, Jens Widell wrote: > On 2017/03/07 at 15:01:01, haraken wrote: > > ...
3 years, 9 months ago (2017-03-08 09:56:20 UTC) #24
Yuki
Can we move forward with non-Maybe/non-Context version of Set(Local<Value> key, Local<Value> value) with a TODO(yukishiino) ...
3 years, 9 months ago (2017-03-13 08:51:29 UTC) #25
Jens Widell
On 2017/03/13 08:51:29, Yuki wrote: > Can we move forward with > non-Maybe/non-Context version of ...
3 years, 9 months ago (2017-03-13 10:41:29 UTC) #26
Yuki
On 2017/03/13 10:41:29, Jens Widell wrote: > On 2017/03/13 08:51:29, Yuki wrote: > > Can ...
3 years, 9 months ago (2017-03-13 12:27:10 UTC) #27
haraken
On 2017/03/13 12:27:10, Yuki wrote: > On 2017/03/13 10:41:29, Jens Widell wrote: > > On ...
3 years, 9 months ago (2017-03-13 12:36:20 UTC) #28
Jens Widell
Patch rebased and updated to use GetCurrentContext() instead of GetEnteredContext(), which now works, after https://codereview.chromium.org/2862483003/.
3 years, 7 months ago (2017-05-05 13:26:50 UTC) #29
Yuki
https://codereview.chromium.org/2733763003/diff/20001/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): https://codereview.chromium.org/2733763003/diff/20001/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode302 third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl:302: {% set check_security_for_receiver = attribute.is_check_security_for_receiver and not attribute.is_data_type_property %} ...
3 years, 7 months ago (2017-05-08 09:31:19 UTC) #30
Jens Widell
On 2017/05/08 at 09:31:19, yukishiino wrote: > https://codereview.chromium.org/2733763003/diff/20001/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl > File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): > > https://codereview.chromium.org/2733763003/diff/20001/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode302 ...
3 years, 7 months ago (2017-05-10 13:03:26 UTC) #31
Yuki
Looks like you've not yet uploaded your latest patch?
3 years, 7 months ago (2017-05-10 13:07:51 UTC) #32
Jens Widell
On 2017/05/10 at 13:07:51, yukishiino wrote: > Looks like you've not yet uploaded your latest ...
3 years, 7 months ago (2017-05-10 13:09:10 UTC) #33
Yuki
LGTM ;)
3 years, 7 months ago (2017-05-10 13:28:15 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2733763003/40001
3 years, 7 months ago (2017-05-10 14:19:11 UTC) #36
haraken
https://codereview.chromium.org/2733763003/diff/40001/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): https://codereview.chromium.org/2733763003/diff/40001/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode345 third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl:345: if (!holder->Get(isolate->GetCurrentContext(), V8String(isolate, "{{attribute.name}}")).ToLocal(&target)) Just to confirm: If the ...
3 years, 7 months ago (2017-05-10 14:40:03 UTC) #37
Jens Widell
On 2017/05/10 at 14:40:03, haraken wrote: > https://codereview.chromium.org/2733763003/diff/40001/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl > File third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl (right): > > https://codereview.chromium.org/2733763003/diff/40001/third_party/WebKit/Source/bindings/templates/attributes.cpp.tmpl#newcode345 ...
3 years, 7 months ago (2017-05-10 14:46:15 UTC) #39
haraken
LGTM
3 years, 7 months ago (2017-05-10 14:56:38 UTC) #40
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2733763003/60001
3 years, 7 months ago (2017-05-10 14:57:36 UTC) #43
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/450122)
3 years, 7 months ago (2017-05-10 16:43:31 UTC) #45
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2733763003/60001
3 years, 7 months ago (2017-05-11 06:36:20 UTC) #47
commit-bot: I haz the power
3 years, 7 months ago (2017-05-11 07:40:15 UTC) #50
Message was sent while issue was closed.
Committed patchset #4 (id:60001) as
https://chromium.googlesource.com/chromium/src/+/0fda810e000bd150860e33350b4a...

Powered by Google App Engine
This is Rietveld 408576698