Skip to content

Commit

Permalink
fix bug in wasmi executor
Browse files Browse the repository at this point in the history
  • Loading branch information
Robbepop committed Dec 1, 2023
1 parent 983ef37 commit f7b3200
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions crates/wasmi/src/engine/mod.rs
Expand Up @@ -647,7 +647,9 @@ impl<'engine> EngineExecutor<'engine> {
Results: CallResults,
{
self.stack.reset();
self.stack.values.extend(params.call_params());
let call_params = params.call_params();
self.stack.values.reserve(call_params.len())?;
self.stack.values.extend(call_params);
match ctx.as_context().store.inner.resolve_func(func) {
FuncEntity::Wasm(wasm_func) => {
self.stack
Expand Down Expand Up @@ -689,7 +691,9 @@ impl<'engine> EngineExecutor<'engine> {
self.stack
.values
.drop(host_func.ty(ctx.as_context()).params().len());
self.stack.values.extend(params.call_params());
let call_params = params.call_params();
self.stack.values.reserve(call_params.len())?;
self.stack.values.extend(call_params);
assert!(
self.stack.frames.peek().is_some(),
"a frame must be on the call stack upon resumption"
Expand Down

0 comments on commit f7b3200

Please sign in to comment.