Issue 1963 in google-caja: Need to rewrite Error inheritance to keep UnsafeError hidden

0 views
Skip to first unread message

googl...@googlecode.com

unread,
Apr 11, 2015, 8:33:43 PM4/11/15
to google-ca...@googlegroups.com
Status: Started
Owner: erights
Labels: Type-Defect Priority-Medium Component-Other

New issue 1963 by erights: Need to rewrite Error inheritance to keep
UnsafeError hidden
https://code.google.com/p/google-caja/issues/detail?id=1963

For each of the builtin "subclasses" of Error, such as EvalError, ES6
changes them the constructors themselves to inherit directly from the Error
constructor, in order to be analogous to ES6's handling of user defined
classes. Chrome 44 Canary now implements this.

However, debug.js hides the original Error constructor for its own use as
UnsafeError, replacing it with FakeError. However, it still would have been
accessible via, for example, Object.getPrototypeOf(EvalError) or
EvalError.__proto__. Fortunately, the new error checking we added to
startSES caught this, so no unsafety results. Unfortunately, this results
in SES (and therefore Caja in ES5 mode) reporting that it cannot initialize
safely on Chrome 44 Canary.

--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
Reply all
Reply to author
Forward
0 new messages