From ab5f9c379f8404b9525a1f546bb6acba140f9718 Mon Sep 17 00:00:00 2001 From: David Fugate <dfugate@microsoft.com> Date: Fri, 13 Jan 2012 11:31:20 -0800 Subject: [PATCH] https://bugs.ecmascript.org/show_bug.cgi?id=23 resolved. --- .../15.5/15.5.4/15.5.4.10/S15.5.4.10_A1_T3.js | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/test/suite/ch15/15.5/15.5.4/15.5.4.10/S15.5.4.10_A1_T3.js b/test/suite/ch15/15.5/15.5.4/15.5.4.10/S15.5.4.10_A1_T3.js index 96c30069b2..6eb2ff4b95 100644 --- a/test/suite/ch15/15.5/15.5.4/15.5.4.10/S15.5.4.10_A1_T3.js +++ b/test/suite/ch15/15.5/15.5.4/15.5.4.10/S15.5.4.10_A1_T3.js @@ -8,18 +8,17 @@ * @description Checking by using eval */ -var match = String.prototype.match; +var match = String.prototype.match.bind(fnGlobalObject()); -if (typeof toString === "undefined"){ - toString = Object.prototype.toString; -} - -var __class__ = toString(); +try { + fnGlobalObject().toString = Object.prototype.toString; +} catch (e) { ; } ////////////////////////////////////////////////////////////////////////////// //CHECK#1 -if (match(eval("\"bj\""))[0] !== "bj") { - $ERROR('#1: match = String.prototype.match; match(eval("\\"bj\\""))[0] === "bj". Actual: '+match(eval("\"bj\""))[0] ); +if ((fnGlobalObject().toString === Object.prototype.toString) && //Ensure we could overwrite global obj's toString + (match(eval("\"bj\""))[0] !== "bj")) { + $ERROR('#1: match = String.prototype.match.bind(this); match(eval("\\"bj\\""))[0] === "bj". Actual: '+match(eval("\"bj\""))[0] ); } // ////////////////////////////////////////////////////////////////////////////// -- GitLab