mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 12:38:12 +00:00
LibWasm: Calculate the max data segment size correctly
This is given in pages, we need to first convert to bytes before comparing with bytes.
This commit is contained in:
parent
18e2bc635f
commit
21c6e4c257
1 changed files with 1 additions and 1 deletions
|
@ -345,7 +345,7 @@ InstantiationResult AbstractMachine::instantiate(Module const& module, Vector<Ex
|
|||
auto address = main_module_instance.memories()[data.index.value()];
|
||||
if (auto instance = m_store.get(address)) {
|
||||
if (auto max = instance->type().limits().max(); max.has_value()) {
|
||||
if (*max < data.init.size() + offset) {
|
||||
if (*max * Constants::page_size < data.init.size() + offset) {
|
||||
instantiation_result = InstantiationError {
|
||||
String::formatted("Data segment attempted to write to out-of-bounds memory ({}) of max {} bytes",
|
||||
data.init.size() + offset, instance->type().limits().max().value())
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue