summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/node_platform.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/node_platform.cc b/src/node_platform.cc
index da28de0a84..9b1c4b4ca9 100644
--- a/src/node_platform.cc
+++ b/src/node_platform.cc
@@ -334,9 +334,13 @@ void PerIsolatePlatformData::RunForegroundTask(std::unique_ptr<Task> task) {
Isolate* isolate = Isolate::GetCurrent();
HandleScope scope(isolate);
Environment* env = Environment::GetCurrent(isolate);
- InternalCallbackScope cb_scope(env, Local<Object>(), { 0, 0 },
- InternalCallbackScope::kAllowEmptyResource);
- task->Run();
+ if (env != nullptr) {
+ InternalCallbackScope cb_scope(env, Local<Object>(), { 0, 0 },
+ InternalCallbackScope::kAllowEmptyResource);
+ task->Run();
+ } else {
+ task->Run();
+ }
}
void PerIsolatePlatformData::DeleteFromScheduledTasks(DelayedTask* task) {