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

Issue 2250063002: binding: Adds a check that ActiveScriptWrappable specifies [ActiveScriptWrappable]. (Closed)

Created:
4 years, 4 months ago by Yuki
Modified:
4 years, 4 months ago
Reviewers:
haraken, peria
CC:
chromium-reviews, blink-reviews, blink-reviews-bindings_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

binding: Adds a check that ActiveScriptWrappable specifies [ActiveScriptWrappable]. Makes it a compile error that a subclass of ActiveScriptWrappable is defined without specifying [ActiveScriptWrappable] in its IDL file. BUG= Committed: https://crrev.com/f19828c6d2bff36b0e3811c92ebe9e8f7bd5e12c Cr-Commit-Position: refs/heads/master@{#412217}

Patch Set 1 #

Total comments: 5
Unified diffs Side-by-side diffs Delta from patch set Stats (+191 lines, -4 lines) Patch
M third_party/WebKit/Source/bindings/templates/interface_base.cpp View 1 chunk +9 lines, -1 line 3 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8ArrayBuffer.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8ArrayBufferView.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8DataView.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8SVGTestInterface.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestException.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexed.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexedGlobal.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestIntegerIndexedPrimaryGlobal.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterface3.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceCheckSecurity.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor2.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor3.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceConstructor4.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceCustomConstructor.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceDocument.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEmpty.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEventInitConstructor.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceEventTarget.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceGarbageCollected.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNamedConstructor2.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceNode.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceOriginTrialEnabled.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestInterfaceSecureContext.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestNode.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestObject.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestSpecialOperations.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestSpecialOperationsNotEnumerable.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8TestTypedefs.cpp View 1 chunk +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/tests/results/core/V8Uint8ClampedArray.cpp View 1 chunk +5 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl View 1 chunk +1 line, -0 lines 2 comments Download
M third_party/WebKit/Source/modules/fetch/Request.idl View 1 chunk +1 line, -0 lines 0 comments Download
M third_party/WebKit/Source/modules/sensor/Sensor.idl View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 19 (8 generated)
Yuki
Could you review this CL?
4 years, 4 months ago (2016-08-16 07:11:16 UTC) #4
peria
https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/bindings/templates/interface_base.cpp File third_party/WebKit/Source/bindings/templates/interface_base.cpp (right): https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/bindings/templates/interface_base.cpp#newcode44 third_party/WebKit/Source/bindings/templates/interface_base.cpp:44: "Be consistent."); Don't we need to care the inverted ...
4 years, 4 months ago (2016-08-16 07:24:43 UTC) #6
Yuki
https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/bindings/templates/interface_base.cpp File third_party/WebKit/Source/bindings/templates/interface_base.cpp (right): https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/bindings/templates/interface_base.cpp#newcode44 third_party/WebKit/Source/bindings/templates/interface_base.cpp:44: "Be consistent."); On 2016/08/16 07:24:43, peria wrote: > Don't ...
4 years, 4 months ago (2016-08-16 08:43:28 UTC) #7
Yuki
https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/bindings/templates/interface_base.cpp File third_party/WebKit/Source/bindings/templates/interface_base.cpp (right): https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/bindings/templates/interface_base.cpp#newcode44 third_party/WebKit/Source/bindings/templates/interface_base.cpp:44: "Be consistent."); On 2016/08/16 08:43:27, Yuki wrote: > On ...
4 years, 4 months ago (2016-08-16 08:44:37 UTC) #8
haraken
LGTM https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl File third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl (right): https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl#newcode6 third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl:6: ActiveScriptWrappable, How was CompositorWorker working without having [ActiveScriptWrappable]? ...
4 years, 4 months ago (2016-08-16 11:38:02 UTC) #11
Yuki
https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl File third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl (right): https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl#newcode6 third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl:6: ActiveScriptWrappable, On 2016/08/16 11:38:02, haraken wrote: > > How ...
4 years, 4 months ago (2016-08-16 12:04:39 UTC) #12
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/2250063002/1
4 years, 4 months ago (2016-08-16 12:05:05 UTC) #14
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 4 months ago (2016-08-16 12:09:20 UTC) #15
commit-bot: I haz the power
Patchset 1 (id:??) landed as https://crrev.com/f19828c6d2bff36b0e3811c92ebe9e8f7bd5e12c Cr-Commit-Position: refs/heads/master@{#412217}
4 years, 4 months ago (2016-08-16 12:11:12 UTC) #17
haraken
On 2016/08/16 12:04:39, Yuki wrote: > https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl > File third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl > (right): > > https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl#newcode6 ...
4 years, 4 months ago (2016-08-16 12:20:03 UTC) #18
Yuki
4 years, 4 months ago (2016-08-16 12:31:56 UTC) #19
Message was sent while issue was closed.
On 2016/08/16 12:20:03, haraken wrote:
> On 2016/08/16 12:04:39, Yuki wrote:
> >
>
https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/m...
> > File third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl
> > (right):
> > 
> >
>
https://codereview.chromium.org/2250063002/diff/1/third_party/WebKit/Source/m...
> > third_party/WebKit/Source/modules/compositorworker/CompositorWorker.idl:6:
> > ActiveScriptWrappable,
> > On 2016/08/16 11:38:02, haraken wrote:
> > > 
> > > How was CompositorWorker working without having [ActiveScriptWrappable]?
Or
> > was
> > > it broken?
> > 
> > I have no idea.  Probably we were just lucky, or it may have been broken.
> > a) CompositorWorker itself does not define hasPendingActivity(), so it's
> > possible that CompositorWorker itself does not care much about pending
> > activities.
> > b) CompositorWorker inherits from InProcessWorkerBase, which defines
> > hasPendingActivity().
> > 
> > I don't have deep knowledge about CompositorWorker, so I can't say a lot.
> 
> I guess it was broken but no one had noticed it because CompositorWorker is
> behind a flag. Also the bug shows up only when you write JS that relies on an
> expando on CompositorWorker's wrapper. It would be rare. The same thing would
> have been happening for Request and Sensor.

Thanks, got it.

Powered by Google App Engine
This is Rietveld 408576698