From bacf5a7220ce2301c3b1e72d049b276f2e7c4d4e Mon Sep 17 00:00:00 2001 From: Ali Mohammad Pur Date: Tue, 13 Jul 2021 00:36:50 +0430 Subject: [PATCH] wasm: Don't try to print the function results if it traps --- Userland/Utilities/wasm.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/Userland/Utilities/wasm.cpp b/Userland/Utilities/wasm.cpp index 008bb2b273..3229aefb4b 100644 --- a/Userland/Utilities/wasm.cpp +++ b/Userland/Utilities/wasm.cpp @@ -512,14 +512,16 @@ int main(int argc, char* argv[]) if (debug) launch_repl(); - if (result.is_trap()) - warnln("Execution trapped!"); - if (!result.values().is_empty()) - warnln("Returned:"); - for (auto& value : result.values()) { - Wasm::Printer printer { stream }; - g_stdout.write(" -> "sv.bytes()); - g_printer.print(value); + if (result.is_trap()) { + warnln("Execution trapped: {}", result.trap().reason); + } else { + if (!result.values().is_empty()) + warnln("Returned:"); + for (auto& value : result.values()) { + Wasm::Printer printer { stream }; + g_stdout.write(" -> "sv.bytes()); + g_printer.print(value); + } } } }