浏览代码

LibJS: Convert values to boolean for JumpIfTrue/JumpIfFalse

Value::as_bool() might fail if the underlying value isn't already a
boolean value.
Gunnar Beutner 4 年之前
父节点
当前提交
216d27d4c1
共有 1 个文件被更改,包括 2 次插入2 次删除
  1. 2 2
      Userland/Libraries/LibJS/Bytecode/Op.cpp

+ 2 - 2
Userland/Libraries/LibJS/Bytecode/Op.cpp

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