mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 08:08:12 +00:00
LibJS: Handle exception in for loop test execution
This commit is contained in:
parent
5eaa7ff406
commit
8ad11df89f
2 changed files with 40 additions and 1 deletions
|
@ -236,9 +236,12 @@ Value ForStatement::execute(Interpreter& interpreter) const
|
|||
}
|
||||
|
||||
if (m_test) {
|
||||
while (m_test->execute(interpreter).to_boolean()) {
|
||||
while (true) {
|
||||
auto test_result = m_test->execute(interpreter);
|
||||
if (interpreter.exception())
|
||||
return {};
|
||||
if (!test_result.to_boolean())
|
||||
break;
|
||||
last_value = interpreter.run(*m_body);
|
||||
if (interpreter.exception())
|
||||
return {};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue