1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 09:48:11 +00:00

LibJS: Only log exception throw information on Serenity

This is a bit annoying when running the js REPL as part of the Lagom
build, as it prints the error twice to the same terminal - once from
dbg() and then from printf().

Long term this should probably be removed completely and each program
take care itself of printing stacktraces to an appropriate location.
This commit is contained in:
Linus Groh 2020-05-26 12:52:20 +01:00 committed by Andreas Kling
parent 602c3fdb3a
commit bc307f6b1c

View file

@ -239,6 +239,7 @@ Value Interpreter::construct(Function& function, Function& new_target, Optional<
Value Interpreter::throw_exception(Exception* exception)
{
#ifdef __serenity__
if (exception->value().is_object() && exception->value().as_object().is_error()) {
auto& error = static_cast<Error&>(exception->value().as_object());
dbg() << "Throwing JavaScript Error: " << error.name() << ", " << error.message();
@ -250,6 +251,7 @@ Value Interpreter::throw_exception(Exception* exception)
dbg() << " " << function_name;
}
}
#endif
m_exception = exception;
unwind(ScopeType::Try);
return {};