blob: 9121bc7fac0a9d7847abe2d5df6ddfcd51b7e67b [file] [log] [blame]
description('Test that when the stack overflows, the exception goes to the last frame before the overflow');
var level = 0;
var stackLevel = 0;
var gotWrongCatch = false;
function test1()
{
var myLevel = level;
var dummy;
try {
level = level + 1;
// Dummy code to make this funciton different from test2()
dummy = level * level + 1;
if (dummy == 0)
debug('Should never get here!!!!');
} catch(err) {
gotWrongCatch = true;
}
try {
test2();
} catch(err) {
stackLevel = myLevel;
}
}
function test2()
{
var myLevel = level;
// Dummy code to make this funciton different from test1()
if (gotWrongCatch)
debug('Should never get here!!!!');
try {
level = level + 1;
} catch(err) {
gotWrongCatch = true;
}
try {
test1();
} catch(err) {
stackLevel = myLevel;
}
}
test1();
shouldBeFalse("gotWrongCatch");
shouldBe("(stackLevel)", "(level - 1)");