diff options
author | wolfbeast <mcwerewolf@gmail.com> | 2018-03-18 19:59:51 +0100 |
---|---|---|
committer | wolfbeast <mcwerewolf@gmail.com> | 2018-03-18 20:00:50 +0100 |
commit | b2af10d6cf38b23fd0697b1835943df32301c785 (patch) | |
tree | e0e3d292f97727050af4bfa6a4cd82e5fb83ce65 /js/src/vm | |
parent | b2331d76221b67bffb5cb5a2344c8b150a305dc7 (diff) | |
parent | 726d2c3093d1a386edbff106070456cf866c0a6a (diff) | |
download | UXP-b2af10d6cf38b23fd0697b1835943df32301c785.tar UXP-b2af10d6cf38b23fd0697b1835943df32301c785.tar.gz UXP-b2af10d6cf38b23fd0697b1835943df32301c785.tar.lz UXP-b2af10d6cf38b23fd0697b1835943df32301c785.tar.xz UXP-b2af10d6cf38b23fd0697b1835943df32301c785.zip |
Remove strict arguments poison pill for "caller" property per ES2017
This resolves #79.
Merged remote-tracking branch 'janek/js_strict_arguments_caller_removed_1'
Diffstat (limited to 'js/src/vm')
-rw-r--r-- | js/src/vm/ArgumentsObject.cpp | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/js/src/vm/ArgumentsObject.cpp b/js/src/vm/ArgumentsObject.cpp index d01121ef0..717aa1050 100644 --- a/js/src/vm/ArgumentsObject.cpp +++ b/js/src/vm/ArgumentsObject.cpp @@ -676,7 +676,7 @@ UnmappedArgumentsObject::obj_resolve(JSContext* cx, HandleObject obj, HandleId i if (argsobj->hasOverriddenLength()) return true; } else { - if (!JSID_IS_ATOM(id, cx->names().callee) && !JSID_IS_ATOM(id, cx->names().caller)) + if (!JSID_IS_ATOM(id, cx->names().callee)) return true; attrs = JSPROP_PERMANENT | JSPROP_GETTER | JSPROP_SETTER | JSPROP_SHARED; @@ -709,10 +709,6 @@ UnmappedArgumentsObject::obj_enumerate(JSContext* cx, HandleObject obj) if (!HasProperty(cx, argsobj, id, &found)) return false; - id = NameToId(cx->names().caller); - if (!HasProperty(cx, argsobj, id, &found)) - return false; - id = SYMBOL_TO_JSID(cx->wellKnownSymbols().iterator); if (!HasProperty(cx, argsobj, id, &found)) return false; |