fix(instruction-metering): correct condition checks in wasm_runtime_resume_wasm function

This commit is contained in:
Alix ANNERAUD 2026-04-06 11:29:03 +02:00
parent 41dd8a7a49
commit e661e596fc

View File

@ -2480,15 +2480,15 @@ wasm_runtime_resume_wasm(WASMExecEnv *exec_env)
return false; return false;
} }
if (!exec_env->metering_suspended if (!exec_env->metering_suspended || !exec_env->metering_suspend_function
|| !exec_env->metering_suspend_function
|| !exec_env->metering_suspend_argv) { || !exec_env->metering_suspend_argv) {
wasm_runtime_set_exception(exec_env->module_inst, wasm_runtime_set_exception(exec_env->module_inst,
"no metering resume is pending"); "no metering resume is pending");
return false; return false;
} }
function = (WASMFunctionInstanceCommon *)exec_env->metering_suspend_function; function =
(WASMFunctionInstanceCommon *)exec_env->metering_suspend_function;
return wasm_runtime_call_wasm(exec_env, function, return wasm_runtime_call_wasm(exec_env, function,
exec_env->metering_suspend_argc, exec_env->metering_suspend_argc,
exec_env->metering_suspend_argv); exec_env->metering_suspend_argv);