mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-17 15:25:52 +00:00
Bug 1391405: Part 6 - Use native helper for extracting enumerable properties. r=zombie
MozReview-Commit-ID: JqSrGUVVauE --HG-- extra : rebase_source : 1ffb3fdc2688052d768264f105492199e3ced598 extra : histedit_source : cdb9ea7630b674c9e446e28def08a0fc204b99b6
This commit is contained in:
parent
13e61f79f9
commit
3d16325eaf
@ -1556,22 +1556,7 @@ class ObjectType extends Type {
|
||||
`be a plain JavaScript object`);
|
||||
}
|
||||
|
||||
let properties = Object.create(null);
|
||||
|
||||
let waived = ChromeUtils.waiveXrays(value);
|
||||
for (let prop of Object.getOwnPropertyNames(waived)) {
|
||||
let desc = Object.getOwnPropertyDescriptor(waived, prop);
|
||||
if (desc.get || desc.set) {
|
||||
throw context.error("Objects cannot have getters or setters on properties",
|
||||
"contain no getter or setter properties");
|
||||
}
|
||||
// Chrome ignores non-enumerable properties.
|
||||
if (desc.enumerable) {
|
||||
properties[prop] = ChromeUtils.unwaiveXrays(desc.value);
|
||||
}
|
||||
}
|
||||
|
||||
return properties;
|
||||
return ChromeUtils.shallowClone(value);
|
||||
}
|
||||
|
||||
checkProperty(context, prop, propType, result, properties, remainingProps) {
|
||||
|
Loading…
Reference in New Issue
Block a user