Reviewers: MarkM,
Description:
ArrayLike already provides a "length" property, and TameDOMTokenList
is an ArrayLike, so it shouldn't try to define its own.
This happened to work before, but on current Firefox the property
definition fails in ES5/3 due to trying to do an emulated property
definition on top of a real accessor property.
Please review this at
https://codereview.appspot.com/233750043/
Affected files (+1, -1 lines):
M src/com/google/caja/plugin/domado.js
Index: src/com/google/caja/plugin/domado.js
diff --git a/src/com/google/caja/plugin/domado.js
b/src/com/google/caja/plugin/domado.js
index
1a5c8e9f04e5242d96804b35f78417d2d5fad5dd..42a18a2269df7747b0fd395ef914cdc887e97819
100644
--- a/src/com/google/caja/plugin/domado.js
+++ b/src/com/google/caja/plugin/domado.js
@@ -3631,7 +3631,7 @@ var Domado = (function() {
}
registerArrayLikeClass(TameDOMTokenList);
Props.define(TameDOMTokenList.prototype, TokenListConf, {
- length: PT.ro,
+ // length: PT.ro, // handled by ArrayLike
item: Props.ampMethod(function(privates, i) {
var ftoken = privates.feral.item(i);
return ftoken === null ? null : privates.getT(ftoken);