diff --git a/Userland/Libraries/LibWasm/AbstractMachine/Configuration.cpp b/Userland/Libraries/LibWasm/AbstractMachine/Configuration.cpp index 0bb260ee5b..88de3a1459 100644 --- a/Userland/Libraries/LibWasm/AbstractMachine/Configuration.cpp +++ b/Userland/Libraries/LibWasm/AbstractMachine/Configuration.cpp @@ -4,6 +4,7 @@ * SPDX-License-Identifier: BSD-2-Clause */ +#include #include #include #include @@ -85,9 +86,11 @@ Result Configuration::execute(Interpreter& interpreter) void Configuration::dump_stack() { auto print_value = [](CheckedFormatString format, Ts... vs) { - DuplexMemoryStream memory_stream; - Printer { memory_stream }.print(vs...); - ByteBuffer buffer = memory_stream.copy_into_contiguous_buffer(); + Core::Stream::AllocatingMemoryStream memory_stream; + Core::Stream::WrapInAKOutputStream wrapped_memory_stream { memory_stream }; + Printer { wrapped_memory_stream }.print(vs...); + auto buffer = ByteBuffer::create_uninitialized(memory_stream.used_buffer_size()).release_value_but_fixme_should_propagate_errors(); + memory_stream.read_entire_buffer(buffer).release_value_but_fixme_should_propagate_errors(); dbgln(format.view(), StringView(buffer).trim_whitespace()); }; for (auto const& entry : stack().entries()) { diff --git a/Userland/Utilities/wasm.cpp b/Userland/Utilities/wasm.cpp index fabb40c2c1..3bd79b4a05 100644 --- a/Userland/Utilities/wasm.cpp +++ b/Userland/Utilities/wasm.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -396,13 +397,15 @@ ErrorOr serenity_main(Main::Arguments arguments) StringBuilder argument_builder; bool first = true; for (auto& argument : arguments) { - DuplexMemoryStream stream; - Wasm::Printer { stream }.print(argument); + Core::Stream::AllocatingMemoryStream stream; + Core::Stream::WrapInAKOutputStream wrapped_stream { stream }; + Wasm::Printer { wrapped_stream }.print(argument); if (first) first = false; else argument_builder.append(", "sv); - ByteBuffer buffer = stream.copy_into_contiguous_buffer(); + auto buffer = ByteBuffer::create_uninitialized(stream.used_buffer_size()).release_value_but_fixme_should_propagate_errors(); + stream.read_entire_buffer(buffer).release_value_but_fixme_should_propagate_errors(); argument_builder.append(StringView(buffer).trim_whitespace()); } dbgln("[wasm runtime] Stub function {} was called with the following arguments: {}", name, argument_builder.to_deprecated_string());