LibJS: Convert values to boolean for JumpIfTrue/JumpIfFalse

Value::as_bool() might fail if the underlying value isn't already a
boolean value.
This commit is contained in:
Gunnar Beutner 2021-06-07 22:53:33 +02:00 committed by Andreas Kling
commit 216d27d4c1
Notes: sideshowbarker 2024-07-18 12:39:36 +09:00

View file

@ -153,7 +153,7 @@ void JumpIfFalse::execute(Bytecode::Interpreter& interpreter) const
{
VERIFY(m_target.has_value());
auto result = interpreter.reg(m_result);
if (!result.as_bool())
if (!result.to_boolean())
interpreter.jump(m_target.value());
}
@ -161,7 +161,7 @@ void JumpIfTrue::execute(Bytecode::Interpreter& interpreter) const
{
VERIFY(m_target.has_value());
auto result = interpreter.reg(m_result);
if (result.as_bool())
if (result.to_boolean())
interpreter.jump(m_target.value());
}