diff --git a/runtime/src/current_sandbox.c b/runtime/src/current_sandbox.c index 879720ec..5fe08c47 100644 --- a/runtime/src/current_sandbox.c +++ b/runtime/src/current_sandbox.c @@ -104,7 +104,6 @@ current_sandbox_init() /* Initialize sandbox memory */ struct module *current_module = sandbox_get_module(sandbox); - module_initialize_globals(current_module); module_initialize_memory(current_module); /* Initialize WASI */ @@ -118,6 +117,9 @@ current_sandbox_init() sandbox_return(sandbox); + /* Initialize sandbox globals. Needs to run in user state */ + module_initialize_globals(current_module); + return sandbox; err: diff --git a/runtime/src/sandbox.c b/runtime/src/sandbox.c index bba061fb..3b41e741 100644 --- a/runtime/src/sandbox.c +++ b/runtime/src/sandbox.c @@ -59,7 +59,7 @@ sandbox_allocate_globals(struct sandbox *sandbox) assert(sandbox); assert(sandbox->module); - return wasm_globals_init(&sandbox->globals, 10); + return wasm_globals_init(&sandbox->globals, 50); } static inline void