wasmtime-c-api: Use a safe helper for initializing MaybeUninit out pointers

This commit is contained in:
Nick Fitzgerald
2020-07-10 11:33:26 -07:00
parent 377b213fd5
commit d07fdca73a
5 changed files with 28 additions and 27 deletions

View File

@@ -220,12 +220,7 @@ fn _wasmtime_func_call(
match result {
Ok(Ok(out)) => {
for (slot, val) in results.iter_mut().zip(out.into_vec().into_iter()) {
unsafe {
// NB: The results array is likely uninitialized memory, so
// use `ptr::write` rather than assignment (which tries to
// run destructors).
ptr::write(slot.as_mut_ptr(), wasm_val_t::from_val(val));
}
crate::initialize(slot, wasm_val_t::from_val(val));
}
None
}