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

Issue 1387743002: Fixed expando-loss.html test. (Closed)

Created:
5 years, 2 months ago by Ken Russell (switch to Gerrit)
Modified:
5 years, 2 months ago
CC:
asanka, benjhayden+dwatch_chromium.org, blink-reviews, chromium-reviews, darin-cc_chromium.org, jam, piman+watch_chromium.org, sigbjornf
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fixed expando-loss.html test. Use V8HiddenValue to link the JavaScript wrappers of related objects (like framebuffers/attachments, programs/shaders, and anything bound to the context's state) so that any expando properties added to these wrappers aren't lost. Do the same for fetched WebGL extensions. github.com/KhronosGroup/WebGL/1254 makes these tests more rigorous. Remove the suppression for the expando-loss.html test. BUG=485634 Committed: https://crrev.com/14e69f1d699166a027aae362248cdd6a5bc8215b Cr-Commit-Position: refs/heads/master@{#353824}

Patch Set 1 #

Total comments: 2

Patch Set 2 : Delete hidden value on object when setting it to null. #

Total comments: 12

Patch Set 3 : Addressed review feedback from haraken. #

Total comments: 7

Patch Set 4 : Cache ScriptState and use it to wrap m_defaultVertexArrayObject. #

Total comments: 20

Patch Set 5 : Resetting CL to the state of Patch Set 3. #

Total comments: 7

Patch Set 6 : Clarified a couple of points and simplified preserveObjectWrapper. #

Patch Set 7 : One more clarifying comment. #

Total comments: 8

Patch Set 8 : Addressed review feedback from haraken. #

Messages

Total messages: 50 (13 generated)
Ken Russell (switch to Gerrit)
bajones/zmo: please review. jochen: please advise on whether this seems like a good approach (specifically, ...
5 years, 2 months ago (2015-10-03 09:56:35 UTC) #2
Ken Russell (switch to Gerrit)
Note: while this fixes expando-loss.html, more work is needed to handle the new binding points ...
5 years, 2 months ago (2015-10-03 09:57:43 UTC) #3
Ken Russell (switch to Gerrit)
Finally: I'm slightly concerned about the amount of work that's being added to methods like ...
5 years, 2 months ago (2015-10-03 10:01:26 UTC) #4
bajones
One question, but otherwise LGTM. https://codereview.chromium.org/1387743002/diff/1/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/1/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode5031 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:5031: preserveObjectWrapper(scriptState, m_boundVertexArrayObject, "arraybuffer", index, ...
5 years, 2 months ago (2015-10-03 14:39:23 UTC) #5
jochen (gone - plz use gerrit)
approach lgtm, but adding Kentaro for double-checking
5 years, 2 months ago (2015-10-05 15:16:32 UTC) #7
Ken Russell (switch to Gerrit)
https://codereview.chromium.org/1387743002/diff/1/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/1/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode5031 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:5031: preserveObjectWrapper(scriptState, m_boundVertexArrayObject, "arraybuffer", index, m_boundArrayBuffer); On 2015/10/03 14:39:23, bajones ...
5 years, 2 months ago (2015-10-05 22:42:03 UTC) #8
Ken Russell (switch to Gerrit)
Thanks for your reviews. I'm confident in the correctness of this change so am CQ'ing ...
5 years, 2 months ago (2015-10-05 23:11:02 UTC) #9
haraken
https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode2620 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:2620: v8::Local<v8::Value> wrappedExtension = toV8(extension, scriptState->context()->Global(), scriptState->isolate()); It is sad ...
5 years, 2 months ago (2015-10-05 23:40:07 UTC) #10
Ken Russell (switch to Gerrit)
haraken: thanks for your review. Will revise. https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode6735 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:6735: CString name ...
5 years, 2 months ago (2015-10-06 00:14:19 UTC) #11
haraken
https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode6735 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:6735: CString name = builder.toString().utf8(); On 2015/10/06 00:14:19, Ken Russell ...
5 years, 2 months ago (2015-10-06 00:29:10 UTC) #12
haraken
https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode6755 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:6755: void WebGLRenderingContextBase::maybePreserveDefaultVAOObjectWrapper(ScriptState* scriptState) Just to confirm: maybePreserveDefaultVAOObjectWrapper is called ...
5 years, 2 months ago (2015-10-06 00:31:29 UTC) #13
Ken Russell (switch to Gerrit)
On 2015/10/06 00:29:10, haraken wrote: > https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp > File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp > (right): > > https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode6735 ...
5 years, 2 months ago (2015-10-06 02:39:36 UTC) #14
Ken Russell (switch to Gerrit)
https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode6755 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:6755: void WebGLRenderingContextBase::maybePreserveDefaultVAOObjectWrapper(ScriptState* scriptState) On 2015/10/06 00:31:29, haraken wrote: > ...
5 years, 2 months ago (2015-10-06 02:39:42 UTC) #15
Ken Russell (switch to Gerrit)
Please re-review. Using toV8 now, rather than wrap() directly. haraken: if this looks good to ...
5 years, 2 months ago (2015-10-06 02:41:51 UTC) #16
haraken
https://codereview.chromium.org/1387743002/diff/40001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/40001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode998 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:998: m_preservedDefaultVAOObjectWrapper = false; The WebGLRenderingContext is always created by ...
5 years, 2 months ago (2015-10-06 03:46:06 UTC) #17
haraken
https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/20001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode6735 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:6735: CString name = builder.toString().utf8(); On 2015/10/06 02:41:51, Ken Russell ...
5 years, 2 months ago (2015-10-06 03:46:18 UTC) #18
Ken Russell (switch to Gerrit)
https://codereview.chromium.org/1387743002/diff/40001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/40001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode998 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:998: m_preservedDefaultVAOObjectWrapper = false; On 2015/10/06 03:46:06, haraken wrote: > ...
5 years, 2 months ago (2015-10-06 21:28:42 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1387743002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1387743002/40001
5 years, 2 months ago (2015-10-06 21:32:47 UTC) #22
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_ozone_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/71947)
5 years, 2 months ago (2015-10-06 22:13:03 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1387743002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1387743002/40001
5 years, 2 months ago (2015-10-06 23:10:06 UTC) #26
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/78678) linux_chromium_rel_ng on tryserver.chromium.linux (JOB_FAILED, ...
5 years, 2 months ago (2015-10-07 00:38:06 UTC) #28
Ken Russell (switch to Gerrit)
On 2015/10/07 00:38:06, commit-bot: I haz the power wrote: > Try jobs failed on following ...
5 years, 2 months ago (2015-10-07 00:52:40 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1387743002/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1387743002/40001
5 years, 2 months ago (2015-10-07 00:55:44 UTC) #31
haraken
https://codereview.chromium.org/1387743002/diff/40001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/40001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode998 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:998: m_preservedDefaultVAOObjectWrapper = false; On 2015/10/06 21:28:42, Ken Russell wrote: ...
5 years, 2 months ago (2015-10-07 01:42:46 UTC) #32
Ken Russell (switch to Gerrit)
haraken: addressed your review feedback, caching the ScriptState and using it. junov: I had to ...
5 years, 2 months ago (2015-10-13 00:48:46 UTC) #35
haraken
Thanks for being persistent! This is the final round of comments. https://codereview.chromium.org/1387743002/diff/60001/third_party/WebKit/Source/core/html/HTMLCanvasElement.h File third_party/WebKit/Source/core/html/HTMLCanvasElement.h (right): ...
5 years, 2 months ago (2015-10-13 02:02:05 UTC) #36
Ken Russell (switch to Gerrit)
Per offline conversation between haraken and me, the storing of m_scriptState is not necessary. Since ...
5 years, 2 months ago (2015-10-13 06:11:44 UTC) #37
Ken Russell (switch to Gerrit)
Please re-review. Justin: your review no longer needed; Canvas 2D code is no longer touched.
5 years, 2 months ago (2015-10-13 06:28:03 UTC) #39
haraken
LGTM https://codereview.chromium.org/1387743002/diff/80001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/80001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode998 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:998: m_preservedDefaultVAOObjectWrapper = false; m_preservedDefaultVAOObjectWrapper carries two meanings: (a) ...
5 years, 2 months ago (2015-10-13 06:32:28 UTC) #40
haraken
LGTM https://codereview.chromium.org/1387743002/diff/120001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/120001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode1002 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:1002: m_preservedDefaultVAOObjectWrapper = false; Wouldn't it be better to ...
5 years, 2 months ago (2015-10-13 06:40:58 UTC) #41
Ken Russell (switch to Gerrit)
https://codereview.chromium.org/1387743002/diff/120001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp File third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp (right): https://codereview.chromium.org/1387743002/diff/120001/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp#newcode1002 third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp:1002: m_preservedDefaultVAOObjectWrapper = false; On 2015/10/13 06:40:58, haraken wrote: > ...
5 years, 2 months ago (2015-10-13 17:56:57 UTC) #42
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1387743002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1387743002/140001
5 years, 2 months ago (2015-10-13 18:09:00 UTC) #45
commit-bot: I haz the power
Committed patchset #8 (id:140001)
5 years, 2 months ago (2015-10-13 19:34:43 UTC) #46
commit-bot: I haz the power
Patchset 8 (id:??) landed as https://crrev.com/14e69f1d699166a027aae362248cdd6a5bc8215b Cr-Commit-Position: refs/heads/master@{#353824}
5 years, 2 months ago (2015-10-13 19:35:27 UTC) #47
Justin Novosad
Probably not very important, but I think the expando-loss test is missing coverage for texture ...
5 years, 2 months ago (2015-10-13 19:49:43 UTC) #48
bajones
On 2015/10/13 19:49:43, Justin Novosad wrote: > Probably not very important, but I think the ...
5 years, 2 months ago (2015-10-13 19:51:11 UTC) #49
Ken Russell (switch to Gerrit)
5 years, 2 months ago (2015-10-13 20:01:32 UTC) #50
Message was sent while issue was closed.
On 2015/10/13 19:51:11, bajones wrote:
> On 2015/10/13 19:49:43, Justin Novosad wrote:
> > Probably not very important, but I think the expando-loss test is missing
> > coverage for texture types TEXTURE_3D and TEXTURE_2D_ARRAY.
> 
> Those should be covered in the WebGL 2 variant of the test, which I added
> yesterday. Ken has already asked me to add those types.

Note also that follow-on Issue 538938 covers doing this for new binding points,
etc. in WebGL 2.0.

Powered by Google App Engine
This is Rietveld 408576698