https://codereview.appspot.com/6827077/diff/29022/src/com/google/caja/parser/quasiliteral/RewriterMessageType.java File src/com/google/caja/parser/quasiliteral/RewriterMessageType.java (right):
https://codereview.appspot.com/6827077/diff/29022/src/com/google/caja/parser/quasiliteral/RewriterMessageType.java#newcode191 src/com/google/caja/parser/quasiliteral/RewriterMessageType.java:191: TOP_LEVEL_FUNC_INCOMPATIBLE_WITH_CAJA( On 2012/12/26 23:31:13, Jasvir wrote:
In a separate CL.
OK, but please note in the description of this one that it does not affect functions, and therefore does not completely solve the problem. https://codereview.appspot.com/6827077/diff/54001/src/com/google/caja/ses/exportsToSES.js File src/com/google/caja/ses/exportsToSES.js (right): https://codereview.appspot.com/6827077/diff/54001/src/com/google/caja/ses/exportsToSES.js#newcode27 src/com/google/caja/ses/exportsToSES.js:27: (function (ses, global) { maybe "use strict" here? I don't see what passing the 'ses' variable in does. https://codereview.appspot.com/6827077/diff/54001/src/com/google/caja/ses/exportsToSES.js#newcode28 src/com/google/caja/ses/exportsToSES.js:28: ses.rewriter___ = {}; I don't like using "___" here, which suggests it is a hidden-from-guest-code variable, which does not exist in ES5. Use an ordinary "private" naming convention instead. https://codereview.appspot.com/6827077/diff/54001/src/com/google/caja/ses/mitigateGotchas.js File src/com/google/caja/ses/mitigateGotchas.js (right): https://codereview.appspot.com/6827077/diff/54001/src/com/google/caja/ses/mitigateGotchas.js#newcode173 src/com/google/caja/ses/mitigateGotchas.js:173: ses.logger.warn("Failed to mitigate SES gotchas. Proceeding anyways.", e); long line https://codereview.appspot.com/6827077/diff/54001/src/com/google/caja/ses/startSES.js File src/com/google/caja/ses/startSES.js (right): https://codereview.appspot.com/6827077/diff/54001/src/com/google/caja/ses/startSES.js#newcode647 src/com/google/caja/ses/startSES.js:647: if (exprSrc[exprSrc.length - 1] === ';') { Please add rationale comment. *If* this is because mitigateGotchas always parses as statement rather than expression, that could bite us later, and I would like to see either a parameter to mitigateGotchas specifying the interpretation, or forcing expression parse using "("+expr+")". https://codereview.appspot.com/6827077/diff/54001/src/com/google/caja/ses/startSES.js#newcode719 src/com/google/caja/ses/startSES.js:719: var exprSrc = '(function() {' + mitigateGotchas(modSrc) + '\n}).call(this)'; long line https://codereview.appspot.com/6827077/diff/54001/tests/com/google/caja/plugin/test-index.js File tests/com/google/caja/plugin/test-index.js (right): https://codereview.appspot.com/6827077/diff/54001/tests/com/google/caja/plugin/test-index.js#newcode23 tests/com/google/caja/plugin/test-index.js:23: ['es53-test-gotchas-guest.html', 'es5'], obsolete? https://codereview.appspot.com/6827077/
