1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-23 20:17:42 +00:00

js: Don't print last value after exception and return non-success

If in 'foo(); bar();' bar fails, we'd get the error of that and then
foo's return value - that's probably not something anyone expects.

Also make sure to return non-success so the process will exit with 1.
This commit is contained in:
Linus Groh 2021-03-18 18:35:58 +01:00 committed by Andreas Kling
parent 1ef0078b4c
commit cf127b745e

View file

@ -495,13 +495,16 @@ static bool parse_and_run(JS::Interpreter& interpreter, const StringView& source
} }
vm->clear_exception(); vm->clear_exception();
}; };
if (vm->exception())
handle_exception();
if (s_print_last_result) { if (vm->exception()) {
handle_exception();
return false;
}
if (s_print_last_result)
print(vm->last_value()); print(vm->last_value());
if (vm->exception()) if (vm->exception()) {
handle_exception(); return false;
handle_exception();
} }
return true; return true;
} }