diff options
author | Giovanny GutiƩrrez <giovanny.gutierrez@commure.com> | 2022-09-06 07:35:04 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-06 14:35:04 +0200 |
commit | 2929ddabaab016520eb47411fcd8eb543fb256dd (patch) | |
tree | 13cbd0e0878ee5d5a3da2f6083ea4684aa758dad /core/runtime.rs | |
parent | 118dd47ad0ced501b1ad8d9e1cc2a2f443f101e6 (diff) |
fix(core): Register external references for imports to the SnapshotCreator (#15621)
Several functions used for handling of dynamic imports and "import.meta"
object were not registered as external references and caused V8 to crash
during snapshotting. These functions are now registered as external refs
and aborts are no longer happening.
Diffstat (limited to 'core/runtime.rs')
-rw-r--r-- | core/runtime.rs | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/core/runtime.rs b/core/runtime.rs index 42496b271..4aad2bd76 100644 --- a/core/runtime.rs +++ b/core/runtime.rs @@ -1283,11 +1283,7 @@ impl JsRuntime { ); let promise = v8::Local::<v8::Promise>::try_from(value) .expect("Expected to get promise as module evaluation result"); - let empty_fn = |_scope: &mut v8::HandleScope, - _args: v8::FunctionCallbackArguments, - _rv: v8::ReturnValue| {}; - let empty_fn = v8::FunctionTemplate::new(tc_scope, empty_fn); - let empty_fn = empty_fn.get_function(tc_scope).unwrap(); + let empty_fn = bindings::create_empty_fn(tc_scope).unwrap(); promise.catch(tc_scope, empty_fn); let mut state = state_rc.borrow_mut(); let promise_global = v8::Global::new(tc_scope, promise); |