diff options
-rw-r--r-- | src/tools/wasm-ctor-eval.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/tools/wasm-ctor-eval.cpp b/src/tools/wasm-ctor-eval.cpp index 4272c5dba..07e883b8f 100644 --- a/src/tools/wasm-ctor-eval.cpp +++ b/src/tools/wasm-ctor-eval.cpp @@ -331,8 +331,12 @@ void evalCtors(Module& wasm, std::vector<std::string> ctors) { // snapshot globals (note that STACKTOP might be modified, but should // be returned, so that works out) auto globalsBefore = instance.globals; + Export *ex = wasm.getExportOrNull(ctor); + if (!ex) { + Fatal() << "export not found: " << ctor; + } try { - instance.callExport(ctor); + instance.callFunction(ex->value, LiteralList()); } catch (FailToEvalException& fail) { // that's it, we failed, so stop here, cleaning up partial // memory changes first |