diff --git a/src/env.cc b/src/env.cc index 544bb4b54daa0f..9e7ece1e5f1b80 100644 --- a/src/env.cc +++ b/src/env.cc @@ -547,6 +547,8 @@ void Environment::InitializeLibuv() { [](uv_async_t* async) { Environment* env = ContainerOf( &Environment::task_queues_async_, async); + HandleScope handle_scope(env->isolate()); + Context::Scope context_scope(env->context()); env->RunAndClearNativeImmediates(); }); uv_unref(reinterpret_cast(&task_queues_async_)); diff --git a/src/node_file.cc b/src/node_file.cc index 074935b51aa66b..4e975530b2c63c 100644 --- a/src/node_file.cc +++ b/src/node_file.cc @@ -288,6 +288,7 @@ inline void FileHandle::Close() { void FileHandle::CloseReq::Resolve() { Isolate* isolate = env()->isolate(); HandleScope scope(isolate); + Context::Scope context_scope(env()->context()); InternalCallbackScope callback_scope(this); Local promise = promise_.Get(isolate); Local resolver = promise.As(); @@ -297,6 +298,7 @@ void FileHandle::CloseReq::Resolve() { void FileHandle::CloseReq::Reject(Local reason) { Isolate* isolate = env()->isolate(); HandleScope scope(isolate); + Context::Scope context_scope(env()->context()); InternalCallbackScope callback_scope(this); Local promise = promise_.Get(isolate); Local resolver = promise.As();