diff --git a/js/src/jit-test/tests/basic/bug673705.js b/js/src/jit-test/tests/basic/bug673705.js new file mode 100644 index 00000000000..42fc30591c2 --- /dev/null +++ b/js/src/jit-test/tests/basic/bug673705.js @@ -0,0 +1,10 @@ +function bug673705() { + var x; + try { + } catch (e) { + } finally { + print(x); + } + return x; +} +assertEq(bug673705(), undefined); diff --git a/js/src/jsanalyze.cpp b/js/src/jsanalyze.cpp index e35666e5047..3f1cbcd1859 100644 --- a/js/src/jsanalyze.cpp +++ b/js/src/jsanalyze.cpp @@ -1247,7 +1247,7 @@ inline void ScriptAnalysis::ensureVariable(LifetimeVariable &var, unsigned until) { JS_ASSERT(var.lifetime); - JS_ASSERT(until < var.lifetime->start); + JS_ASSERT(until <= var.lifetime->start); var.lifetime->start = until; var.ensured = true; }