Fix null pointer access in fast-interp when configurable soft bound check is enabled (#3150)

The wasm_interp_call_func_bytecode is called for the first time with the empty
module/exec_env to generate a global_handle_table. Before that happens though,
the function checks if the module instance has bounds check enabled. Because
the module instance is null, the program crashes. This PR added an extra check to
prevent the crashes.
This commit is contained in:
Marcin Kolny 2024-02-14 09:18:37 +00:00 committed by GitHub
parent 12f834aebd
commit e792c35822
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -104,6 +104,10 @@ static inline bool
is_bounds_checks_enabled(WASMModuleInstanceCommon *module_inst)
{
#if WASM_CONFIGURABLE_BOUNDS_CHECKS != 0
if (!module_inst) {
return true;
}
return wasm_runtime_is_bounds_checks_enabled(module_inst);
#else
return true;