diff --git a/ext/napi/js_native_api.rs b/ext/napi/js_native_api.rs index 7efbcf81e2..4c2128886d 100644 --- a/ext/napi/js_native_api.rs +++ b/ext/napi/js_native_api.rs @@ -111,12 +111,11 @@ impl Reference { fn set_weak(&mut self) { let reference = self as *mut Reference; if let ReferenceState::Strong(g) = &self.state { - let cb = Box::new(move |_: &mut v8::Isolate| { - Reference::weak_callback(reference) - }); + let cb = Box::new(move || Reference::weak_callback(reference)); let isolate = unsafe { (*self.env).isolate() }; - self.state = - ReferenceState::Weak(v8::Weak::with_finalizer(isolate, g, cb)); + self.state = ReferenceState::Weak(v8::Weak::with_guaranteed_finalizer( + isolate, g, cb, + )); } }