From 8b5fb349ddf16bfa228c2958772de1eb2e7bf397 Mon Sep 17 00:00:00 2001 From: Ben Grant Date: Mon, 11 Nov 2024 16:31:58 -0800 Subject: [PATCH] Assert there is an env when calling external finalizer --- src/bun.js/bindings/napi_external.cpp | 1 + src/bun.js/bindings/v8/V8External.cpp | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bun.js/bindings/napi_external.cpp b/src/bun.js/bindings/napi_external.cpp index ebad63709c..f00f691713 100644 --- a/src/bun.js/bindings/napi_external.cpp +++ b/src/bun.js/bindings/napi_external.cpp @@ -6,6 +6,7 @@ namespace Bun { NapiExternal::~NapiExternal() { if (m_finalizer) { + ASSERT(m_env); m_finalizer->call(m_env, m_value); } } diff --git a/src/bun.js/bindings/v8/V8External.cpp b/src/bun.js/bindings/v8/V8External.cpp index e54a507e5d..4cd9c926e2 100644 --- a/src/bun.js/bindings/v8/V8External.cpp +++ b/src/bun.js/bindings/v8/V8External.cpp @@ -12,8 +12,8 @@ Local External::New(Isolate* isolate, void* value) auto globalObject = isolate->globalObject(); auto& vm = globalObject->vm(); auto structure = globalObject->NapiExternalStructure(); - // TODO(@190n): ponder the second nullptr argument (napi_env). - Bun::NapiExternal* val = Bun::NapiExternal::create(vm, structure, value, nullptr, nullptr, nullptr); + Bun::NapiExternal* val = Bun::NapiExternal::create(vm, structure, value, + nullptr /* hint */, nullptr /* env */, nullptr /* callback */); return isolate->currentHandleScope()->createLocal(vm, val); }