mirror of
https://github.com/fluencelabs/wasmer
synced 2025-06-21 20:51:32 +00:00
Convert emscripten memory assertion to error
This commit is contained in:
@ -459,7 +459,7 @@ impl EmscriptenGlobals {
|
|||||||
}
|
}
|
||||||
|
|
||||||
let (table_min, table_max) = get_emscripten_table_size(&module)?;
|
let (table_min, table_max) = get_emscripten_table_size(&module)?;
|
||||||
let (memory_min, memory_max, shared) = get_emscripten_memory_size(&module);
|
let (memory_min, memory_max, shared) = get_emscripten_memory_size(&module)?;
|
||||||
|
|
||||||
// Memory initialization
|
// Memory initialization
|
||||||
let memory_type = MemoryDescriptor {
|
let memory_type = MemoryDescriptor {
|
||||||
|
@ -41,13 +41,12 @@ pub fn get_emscripten_table_size(module: &Module) -> Result<(u32, Option<u32>),
|
|||||||
Ok((table.minimum, table.maximum))
|
Ok((table.minimum, table.maximum))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn get_emscripten_memory_size(module: &Module) -> (Pages, Option<Pages>, bool) {
|
pub fn get_emscripten_memory_size(module: &Module) -> Result<(Pages, Option<Pages>, bool), String> {
|
||||||
assert!(
|
if module.info().imported_tables.len() == 0 {
|
||||||
module.info().imported_tables.len() > 0,
|
return Err("Emscripten requires at least one imported memory".to_string());
|
||||||
"Emscripten requires at least one imported memory"
|
}
|
||||||
);
|
|
||||||
let (_, memory) = &module.info().imported_memories[ImportedMemoryIndex::new(0)];
|
let (_, memory) = &module.info().imported_memories[ImportedMemoryIndex::new(0)];
|
||||||
(memory.minimum, memory.maximum, memory.shared)
|
Ok((memory.minimum, memory.maximum, memory.shared))
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Reads values written by `-s EMIT_EMSCRIPTEN_METADATA=1`
|
/// Reads values written by `-s EMIT_EMSCRIPTEN_METADATA=1`
|
||||||
|
Reference in New Issue
Block a user