Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(331)

Issue 7905045: Fix mentioning __proto__ causing SES failure on Chrome. (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
11 years, 2 months ago by kpreid2
Modified:
11 years, 2 months ago
Reviewers:
MarkM
CC:
google-caja-discuss_googlegroups.com
Base URL:
http://google-caja.googlecode.com/svn/trunk/
Visibility:
Public.

Description

* repairES5 detects the bug (all objects having a semi-invisible nonconfigurable __proto__ property), but cannot repair it. * repairES5 makes its reports available globally as well as to the logger, so that application-specific workarounds can use the info. * startSES eval wrapper doesn't interpose __proto__ if the bug makes that impossible, and instead makes __proto__ a local variable. * The symbolic names for repairES5's known problems are made available programmatically. Fixes <https://code.google.com/p/google-caja/issues/detail?id=1597>. @r5327

Patch Set 1 #

Total comments: 9

Patch Set 2 : Fix mentioning __proto__ causing SES failure on Chrome. #

Patch Set 3 : Fix mentioning __proto__ causing SES failure on Chrome. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+179 lines, -14 lines) Patch
M src/com/google/caja/ses/repairES5.js View 1 2 62 chunks +99 lines, -0 lines 0 comments Download
M src/com/google/caja/ses/startSES.js View 1 2 5 chunks +38 lines, -14 lines 0 comments Download
M tests/com/google/caja/plugin/es53-test-language-guest.html View 1 2 1 chunk +42 lines, -0 lines 0 comments Download

Messages

Total messages: 6
kpreid2
11 years, 2 months ago (2013-03-19 19:09:28 UTC) #1
MarkM
LGTM I like the notion of passing repair status to startSES. With this mechanism, a ...
11 years, 2 months ago (2013-03-20 08:29:32 UTC) #2
kpreid2
* repairES5 detects the bug (all objects having a semi-invisible nonconfigurable __proto__ property), but cannot ...
11 years, 2 months ago (2013-03-20 17:37:23 UTC) #3
kpreid2
Will commit shortly. https://codereview.appspot.com/7905045/diff/1/src/com/google/caja/ses/repairES5.js File src/com/google/caja/ses/repairES5.js (right): https://codereview.appspot.com/7905045/diff/1/src/com/google/caja/ses/repairES5.js#newcode3513 src/com/google/caja/ses/repairES5.js:3513: urls: [], // v8 bug is ...
11 years, 2 months ago (2013-03-20 17:37:52 UTC) #4
kpreid2
* repairES5 detects the bug (all objects having a semi-invisible nonconfigurable __proto__ property), but cannot ...
11 years, 2 months ago (2013-03-20 18:04:17 UTC) #5
kpreid2
11 years, 2 months ago (2013-03-20 18:10:06 UTC) #6
Forgot one thing — testProtoMention didn't correctly interpret the case (in
Firefox) where the bug *doesn't* exist, but __proto__ does; this means that
__proto__ is properly intercepted, and becomes access to the prototype of the
environment provided to compileModule via *its* normal __proto__ property. Fixed
the test in Patch Set 3.

This is preexisting behavior, so I'm proceeding.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b