LibWasm: Make memory.grow grow the memory's type

After a `memory.grow`, the type of the memory instance should be
updated so potential memory imports on the boundary are unlinkable.
This commit is contained in:
Diego 2024-07-10 15:05:20 -07:00 committed by Ali Mohammad Pur
commit 420a626554
Notes: sideshowbarker 2024-07-17 02:21:14 +09:00
2 changed files with 16 additions and 3 deletions

View file

@ -66,7 +66,7 @@ WebIDL::ExceptionOr<u32> Memory::grow(u32 delta)
return vm.throw_completion<JS::RangeError>("Could not find the memory instance to grow"sv);
auto previous_size = memory->size() / Wasm::Constants::page_size;
if (!memory->grow(delta * Wasm::Constants::page_size, Wasm::MemoryInstance::InhibitGrowCallback::Yes))
if (!memory->grow(delta * Wasm::Constants::page_size, Wasm::MemoryInstance::GrowType::No, Wasm::MemoryInstance::InhibitGrowCallback::Yes))
return vm.throw_completion<JS::RangeError>("Memory.grow() grows past the stated limit of the memory instance"sv);
TRY(reset_the_memory_buffer());