mirror of
https://github.com/fluencelabs/wasmer
synced 2025-06-20 20:26:32 +00:00
Hook up error propagation
This commit is contained in:
@ -205,7 +205,8 @@ impl RunnableModule for X64ExecutionContext {
|
||||
func: NonNull<vm::Func>,
|
||||
args: *const u64,
|
||||
rets: *mut u64,
|
||||
_trap_info: *mut WasmTrapInfo,
|
||||
trap_info: *mut WasmTrapInfo,
|
||||
user_error: *mut Option<Box<dyn Any>>,
|
||||
num_params_plus_one: Option<NonNull<c_void>>,
|
||||
) -> bool {
|
||||
let args = ::std::slice::from_raw_parts(
|
||||
@ -227,7 +228,13 @@ impl RunnableModule for X64ExecutionContext {
|
||||
}
|
||||
true
|
||||
}
|
||||
Err(_) => false,
|
||||
Err(err) => {
|
||||
match err {
|
||||
protect_unix::RunErr::Trap(info) => *trap_info = info,
|
||||
protect_unix::RunErr::Error(data) => *user_error = Some(data),
|
||||
}
|
||||
false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user