From 8852486dba041b2162d5cbd9c085abd16142f40e Mon Sep 17 00:00:00 2001 From: Jan de Mooij Date: Thu, 24 Jan 2013 14:10:53 -0500 Subject: [PATCH] Bug 825379 - IonMonkey: Differential Testing: Getting different output w/without --ion-eager with forEach. r=dvander --- js/src/jit-test/tests/bug825379.js | 8 ++++++++ js/src/jscntxtinlines.h | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) create mode 100644 js/src/jit-test/tests/bug825379.js diff --git a/js/src/jit-test/tests/bug825379.js b/js/src/jit-test/tests/bug825379.js new file mode 100644 index 00000000000..a56866de65a --- /dev/null +++ b/js/src/jit-test/tests/bug825379.js @@ -0,0 +1,8 @@ +x = this +y = {} +y.v = ""; +[0, 0].forEach(function() { + for (p in y) { + x.eval("function f(){yield e}") + } +}); diff --git a/js/src/jscntxtinlines.h b/js/src/jscntxtinlines.h index 2836e957477..beebee10590 100644 --- a/js/src/jscntxtinlines.h +++ b/js/src/jscntxtinlines.h @@ -463,8 +463,8 @@ JSContext::findVersion() const if (hasVersionOverride) return versionOverride; - if (stack.hasfp()) - return fp()->script()->getVersion(); + if (JSScript *script = stack.currentScript()) + return script->getVersion(); return defaultVersion; }